Warum kostenlos registrieren?

Nur als registriertes Mitglied hast Du vollen Zugriff auf alle Funktionen unserer Website. So kannst Du eigene Fragen stellen und hast die volle Übersicht über neue interessante Themen im Forum.
Jetzt kostenlos registrieren.

Login


Word Daten in einer Excel Tabelle speichern

Alles über Betriebssysteme, Anwenderprogramme und andere Software-Probleme.

Word Daten in einer Excel Tabelle speichern

Beitragvon Mandy1675 am 25.08.2005, 14:44

Hi,

ich habe eine Word Dokument mit Textformularfeldern, in diesem stehen Kundendaten (alt) und Kundendaten (neu), wo sich z.B. die Anschrift geändert hat.

Jedes Mal, wenn dieses Dokument aufgerufen wird, soll der Datensatz in eine Excel Tabelle gespeichert werden und zwar immer fortlaufend. So also beim ersten datensatz in Zeile 2, beim zweiten in Zeile 3 u.s.w.

Kann man das über ein Makro in Word lösen ??? Wenn ja, wie ???

Vielen Dank für eure Hilfe.

Mandy
Mandy1675
 
Beiträge: 3
Registriert: 25.08.2005, 14:38


Beitragvon Zyrus am 25.08.2005, 14:50

Vielleicht helfen dir ja diese Links weiter:

Klick

Klick 2

Klick 3

Die Klick 2 + 3 sind pdf-Links, glaube sogar das die Klick 2 + 3 dir mehr helfen
Zyrus
 
Beiträge: 1467
Registriert: 15.08.2005, 16:03

Brauche das andersrum

Beitragvon Mandy1675 am 25.08.2005, 15:25

Hi,

ne, das hilft mir nicht wirklich weiter. Bei mir soll das so sein, das ein beliebiger Mitarbeiter das Word-Formular aufruft. Automatisch werden hier die Daten des Kunden (Name und Anschrift) aus einer anderen Software gezogen. Händisch gibt der Mitarbeiter nur noch die neuen Daten (z.B. Anschrift) ein, in ein Textformularfeld. Dann müsste eigentlich ein Fenster aufpoppen (Word-Makro) mit dem Befehl "Speichern" und dadurch ausgelöst soll der Datensatz dann in die Excel-Tabelle geschrieben werden, beim allerersten in Zeile 2, Zeile 1 ist ja mit den Spaltennamen versehen. Wenn das dann der nächste Mitarbeiter macht, soll der Datensatz in Zeile 3, dann in Zeile 4 u.s.w.

lg Mandy
Mandy1675
 
Beiträge: 3
Registriert: 25.08.2005, 14:38

Beitragvon GrayGhost am 25.08.2005, 16:17

Hallo,
das, was du beschreibst ist wirklich ein klompliziertes Problem und wird hier wohl nicht gelöst werden. Ich würde dir die Seite von Herber vorschlagen. Das ist wirklich eine Profiseite in Bezug auf Excel. Versuche es mal in deren Forum:

www.herber.de
GrayGhost
 

Re: Brauche das andersrum

Beitragvon Porsche Fan am 25.08.2005, 18:05

Mandy1675 hat geschrieben: Automatisch werden hier die Daten des Kunden (Name und Anschrift) aus einer anderen Software gezogen.


Hier die erste Frage, um welche Software handelt es sich dabei? Hat man von Word heraus überhaupt die Möglichkeit auf diese Daten zu zugreifen (event. Verschlüsselt)?

Mandy1675 hat geschrieben:Händisch gibt der Mitarbeiter nur noch die neuen Daten (z.B. Anschrift) ein, in ein Textformularfeld. Dann müsste eigentlich ein Fenster aufpoppen (Word-Makro) mit dem Befehl "Speichern" und dadurch ausgelöst soll der Datensatz dann in die Excel-Tabelle geschrieben werden

Das sollte eigentlich kein Problem sein, da man an ein Formularfeld ein Makro hängen kann.

Ich sehe da nur ein Problem, wenn mehrere Mitarbeiter diesen Vorgang gleichzeitig ausführen kommt es zu Problemen mit Excel. Ich würde da lieber zu einer Access-Anwendung raten.
Porsche Fan
 
Beiträge: 160
Registriert: 02.08.2005, 00:52

Software mit Versichertendaten

Beitragvon Mandy1675 am 26.08.2005, 09:30

Hi,

die Software aus der unsere Versichertendaten kommen ist nicht verschlüsselt. Unser Textverarbeitungsprogramm macht nichts anderes als die Variablen (Textformularfelder z.b. Name ) mit den Daten zu füllen. Man müsste also im Makro diese Textformularfelder auslesen. So hab ich mir das gedacht und dann die Daten irgendwo hin schreiben, wohin auch immer, von mir aus auch nach Access, aber ich weis ja schon nicht, wie man die Textformularfelder ausliest.

lg Mandy
Mandy1675
 
Beiträge: 3
Registriert: 25.08.2005, 14:38

Beitragvon Porsche Fan am 26.08.2005, 12:50

Hallo Mandy,

auslesen der Formularfelder kann man z.B. mit folgender Routine:

Code: Alles auswählen
Sub Read_Data()
Dim aFN(3) As String 'Array mit 4 Feldern

  With ActiveDocument
    aFN(0) = .FormFields("Feldname1").Result
    aFN(1) = .FormFields("Feldname2").Result
    aFN(2) = .FormFields("Feldname3").Result
    aFN(3) = .FormFields("Feldname4").Result
  End With
End Sub



In den Variablen aFN(0) bis aFN(3) stehen dann die Inhalte aus den Formularfeldern. Die Bezeichnung 'Feldname1' ist die Bezeichnung die du beim Textformularfeld unter Textmarke eigetragen hast. Wenn du an einer weiteren Lösung für dein Problem interessiert bist, melde dich noch mal. Bräuchte dann noch weitere Angaben.
Porsche Fan
 
Beiträge: 160
Registriert: 02.08.2005, 00:52

Beitragvon Porsche Fan am 30.08.2005, 08:38

Lösung:

Code: Alles auswählen
Sub Transfer_Data()
Dim db As DAO.Database
Dim strSQL As String  'SQL-String
Dim aFN(10) As String 'Array mit 11 Feldern

  With ActiveDocument
    aFN(0) = .FormFields("Feld01").Result
    aFN(1) = .FormFields("Feld02").Result
    aFN(2) = .FormFields("Feld03").Result
    aFN(3) = .FormFields("Feld04").Result
    aFN(4) = .FormFields("Feld05").Result
    aFN(5) = .FormFields("Feld06").Result
    aFN(6) = .FormFields("Feld07").Result
    aFN(7) = .FormFields("Feld08").Result
    aFN(8) = .FormFields("Feld09").Result
    aFN(9) = .FormFields("Feld10").Result
    aFN(10) = .FormFields("Feld11").Result
  End With
 
  ' Wichtig !!! in folgender Zeile den Pfad zur MDB anpassen.
  Set db = DBEngine.Workspaces(0).OpenDatabase("c:\data\dbname.mdb")
  strSQL = "insert into tblTest (Feld01, Feld02, Feld03, Feld04, Feld05, Feld06, Feld07, " & _
           "Feld08, Feld09, Feld10, Feld11, Feld12) " & _
           "values ('" & aFN(2) & "', '" & Date & "', '" & _
                         aFN(0) & "', '" & aFN(1) & "', '" & _
                         aFN(3) & "', '" & aFN(4) & "', '" & _
                         aFN(5) & "', '" & aFN(6) & "', '" & _
                         aFN(7) & "', '" & aFN(8) & "', '" & _
                         aFN(9) & "', '" & aFN(10) & "')"

  db.Execute (strSQL)
  MsgBox ("Es wurde " & db.RecordsAffected & " Datensatz gespeichert.")
  db.Close
End Sub


Mit diesem Code können Formularfelder in Word ausgelesen werden und in eine Access-DB übertragen werden.

Wichtig: Im Visual-Basic-Editor von Word unter Extras/Verweise muss die 'Microsoft DAO 3.x Object Library' aktiviert sein.

Thema kann geschlossen werden (lt. Mandy)
Porsche Fan
 
Beiträge: 160
Registriert: 02.08.2005, 00:52



Ähnliche Themen


Zurück zu Software-Hilfe

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste