Umfrage: Formular mit Datenauswahl Word vs. Excel
Du hast keine Berechtigung bei dieser Umfrage abzustimmen.
Word
0%
0 0%
Excel
100.00%
1 100.00%
Gesamt 1 Stimme(n) 100%
∗ Du hast diese Antwort gewählt. [Zeige Ergebnisse]

Formular mit Datenauswahl Word oder Excel
#11
Hi,

ich mache schon seit Jahren mit Excel, Word usw. rum, auch mit VBA-Codes, aber damit fange ich nicht sehr viel an:

(21.11.2015, 22:58)snb schrieb: Analysiere die Code....

Dan geht es nicht weiter, doch gehst du.

ThisDocument:
Code:
Private Sub Document_Open()
   snb.Show
End Sub

Formular:
Code:
Private Sub UserForm_Initialize()
  ComboBox1.List = Split(ThisDocument.Variables("Daten"), vbLf)
End Sub

mehr Codes gibt es nicht.

Ich weiß nicht, wie ich an die Variable "Daten" rankomme.
Top
#12
Guten Morgen, genau die gleiche erkenntnis hatte ich gestern Abend auch. Ich verstehe das nicht und glaube für mich ist Excel da besser. Für Datenzugriffe kann ich da auch auf externe Daten zugreifen. Muss nur mal schauen wie ich ein komplettes Tabellenblatt von extern integrieren kann.

Meine Idee wäre gewesen, dass 2 Tabellenblätter komplett extern z.B. auf der Dropbox aktualisiert werden. Die Empfängeradresse und die Texte sollen auf der Dropbox liegen. Somit muss ich nicht allen Mitarbeitern ständig eine neue Exceldatei zusenden sondern füge nur die neuen Daten auf der Dropbox ein.

Wäre denn sowas möglich ?


Gruß Daniel
Top
#13
Hallo,

Zitat:Ich weiß nicht, wie ich an die Variable "Daten" rankomme.

ich habe mal ein wenig rumgespielt.

Menü Einfügen - Schnellbausteine - Feld - das Feld 'DocVariable' auswählen und bei den Feldeigenschaften Daten eingeben. Dann werden die Daten zumindest mal im Worddokument angezeigt.

Aber wo und wie die Daten erstellt und dann geändert werden können habe ich noch nicht herausgefunden.
Gruß
Peter
Top
#14
Servus Peter, genau das habe ich auch rausbekommen aber dann wars das schon, konnte man im Internet nachlesen :)
Top
#15
Wie ihr sieht kann man eine unbeschränkte Anzahl van Daten in einer Word Datei speichern.
Dazu verwendet man docvariables.
Das alles geht nur mit VBA ( wie 'safe').

Speichern tut man einfach mit:

Code:
activedocument.variables("Beispiel")="snb"

Lesen geht mit:

Code:
Msgbox activedocument.variables("Beispiel")

Die DocVariables sind sehr gut geeignet um eben eine ganze Database im Worddocument zu speichern, zu lesen und zu bearbeiten. Und oft viel schneller als in Access.
Top
#16
Hi,

(22.11.2015, 14:03)snb schrieb: Wie ihr sieht kann man eine unbeschränkte Anzahl van Daten in einer Word Datei speichern.
Dazu verwendet man docvariables.
[...]
Die DocVariables sind sehr gut geeignet um eben eine ganze Database im Worddocument zu speichern, zu lesen und zu bearbeiten. Und oft viel schneller als in Access.

Das gefällt mir, jetzt muß ich damit mal rumspielen.
Top
#17
Dass war genau meine Absicht...;)
Top
#18
Hi,

(22.11.2015, 14:59)snb schrieb: Dass war genau meine Absicht...;)

so, ich glaube, Word-VBA ist doch etwas anders wie Excel-VBA.

Ich kann die Daten anzeigen lassen in einer MsgBox mit einem CommandButton, ich kann die Userform aufrufen mit Button, ich kann einen beliebigen Text  in die Variable schreiben.

Hier meine Codes:
Code:
Option Explicit

Private Sub CommandButton1_Click()             'Daten anzeigen
   MsgBox ActiveDocument.Variables("Daten")
End Sub

Private Sub CommandButton2_Click()             'Daten auswählen
   snb.Show
End Sub

Private Sub CommandButton3_Click()             'Daten speichern in Variable
   ActiveDocument.Variables("Daten") = "Kunde 1|Adresse 1|PLZ 1 Ort 1" & Chr(10) & "Kunde 2|Adresse 2|PLZ 2 Ort 2" & Chr(10) & "Kunde 3|Adresse 3|PLZ 3 Ort 3" & Chr(10) & _
   "Kunde 4|Adresse 4|PLZ 4 Ort 4" & Chr(10) & "Kunde 5|Adresse 5|PLZ 5 Ort 5" & Chr(10) & "Kunde 6|Adresse 6|PLZ 6 Ort 6" & Chr(10) & "Kunde 7|Adresse 7|PLZ 7 Ort 7" & Chr(10) & _
   "Kunde 8|Adresse 8|PLZ 8 Ort 8" & Chr(10) & "Kunde 9|Adresse 9|PLZ 9 Ort 9" & Chr(10) & "Kunde 10|Adresse 10|PLZ 10 Ort 10"
End Sub

Private Sub Document_Open()             'Daten auswählen
    snb.Show
End Sub

Aber der Text ist fest verdrahtet im Code, denn ich kann nicht einen in der Variablen gespeicherten Text bearbeiten und wieder neu speichern.

Ich wollte die Userform mit einem Schließen / OK-Button versehen, aber ich kann nicht mal die Userform schließen, Me.Unload geht jedenfalls nicht.

Code:
Option Explicit

Private Sub CommandButton1_Click()
  Me.Unload
End Sub

Private Sub UserForm_Initialize()
   ComboBox1.List = Split(ThisDocument.Variables("Daten"), vbLf)
End Sub

Kannst Du nicht eine kleine Beispieldatei hochladen, in der ein funktionsfähiges Code-System ist, das wir dann anpassen können?
Eigentlich fehlt ja nur das Bearbeiten-Makro und das Userform-Makro zum schließen, Daten übernehmen, Abbrechen
Top
#19
Smile 
Meine Hoffnung war dass du selbst Einiges herausfinden konntest... ;)

Schau mal die angehängte Datei.

Alle Daten in Combobox C_0

Wenn ein 'record' gewählt ist werden die 'Felder' in textboxes T_0, T_1 und T_2 gezeigt.
Die Textboxes kann man ändern. Die Änderungen werden sofort ins Combobox geschickt.
Wenn die Änderungen nicht gespeichert werden sollen klicke CommandButton 'stop'.
Speichern tut die andere Combobox: in Documentvariable und die Datei als ganze.

Wenn die Datei geschlossen wird oder nicht ist egal; wenn das Userform wieder gezeigt wird (show) sind alle Änderungen da in ComboBox C_0.

Der Benutzer kann ohne VBA-kenntnisse keine 'Fehler' machen. Die Daten sind vom VBA geschützt.

Viel Spasz !


Angehängte Dateien
.docm   __Beispiel_snb.docm (Größe: 22,66 KB / Downloads: 11)
Top
#20
Hi,

(23.11.2015, 00:26)snb schrieb: Meine Hoffnung war dass du selbst Einiges herausfinden konntest... ;)

Schau mal die angehängte Datei.

ja, die Hoffnung hatte ich auch.

Auch wenn ich nicht der TE bin, werde ich es mir anschauen.


[Erster Blick ins Makro]
Oooh, mein Gedächtnis hatte mich verlassen (warum grad mich?): Es heißt ja gar nicht "Me.Unload", sondern "Unload Me".
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 3 Gast/Gäste