Anzeige

Am Puls von Microsoft

Anzeige

Office 365 Word VBA Befehl

Puttes

Herzlich willkommen
Hallo ihr Lieben,
wie kann ich in einem Word VBA Makro die erste Zeile einer DOC(X) Datei einlesen und einen Teil der zeile einer Textvariable zuweisen,
gibts dazu irgendein codesnippsel als Beispiel, Danke
 
Anzeige

Westfale

kennt sich schon aus
Probier's mal damit:

Code:
Sub ErsteZeile()
  Dim strErsteZeile As String
  ActiveDocument.Range(0, 0).Select
  strErsteZeile = Selection.Bookmarks("\Line").Range.Text
  ...
End Sub
 
Zuletzt bearbeitet:

Puttes

Herzlich willkommen
Lieber Westfale, danke für diesen Tip, es funktioniert. Da ich schon ab 2005 in Rente bin, fällt mir das arbeiten mit VBA schon etwas schwer. Ein anderes denken! Nun habe ich aber noch eine Bitte: kannst Du mir Quellen nennen wo man sich (eventuell sogar mit Codebeispiele) schlau machen kann welche diese Befehle wie ActiveDocument oder Selection.Bookmarks nachlesen kann, auch das auch ein alter Sack wie ich das kapiert. In meiner aktiven Zeit habe ich mich mit Programmen und Datenbanken rumschlagen müssen für z.B. die Volkswirtschaftliche Gesamtrechnung oder so 'dolle' Sachen. Ich wär Dir dafür sehr verbunden.
Lieben Grüß von einem Rheinländer aus Berlin.
 

Westfale

kennt sich schon aus
Ich habe seit Jahren zwei Bücher im Regal stehen, die mir gute Dienste geleistet haben und das immer noch tun:
  • Microsoft Word, Das Profibuch, von Cindy Meister u. a.,
  • Word-Programmierung, Das Handbuch, von Cindy Meister u. a.,
beide von Microsoft Press. Vielleicht kannst du die Bücher noch irgendwo auftreiben, auch in einigermaßen vernünftig sortierten Bibliotheken könnten sie auffind- und ausleihbar sein.
 

PeteM92

gehört zum Inventar
Word-Programmierung, Das Handbuch, von Cindy Meister
das habe ich gerade als PDF gefunden, hier etwas herunterscrollen - ist aber wohl nur ein Teil des Buchs.

1633943192866.png
 
Zuletzt bearbeitet:

Puttes

Herzlich willkommen
Hallo lieber Westfale, ich habe mal versucht ein Wordmakro zu schreiben. So lala funktioniert das einlesen der ersten Zeile auch gut, aber dann erhalte ich im weiteren Verlauf des Makros einen Laufzeitfehler. In der angehängten Datei ist der Fehlercode und die fehlerhafte Zeile aufgelistet. Leider kann ich auch wegen meiner unkenntnis nicht sagen was falsch sein könnte. Wäre eine Bitte um Hilfe zu verwegen?

'Mein Erstes Makro in Word
Sub SpWord()
Dim intWert As Integer
Dim strErstezeile As String
Dim strDateiname As String
Dim doc As Word.Document
'ermitteln der ersten zeile eines WordDokument
ActiveDocument.Range(0, 0).Select
strErstezeile = Selection.Bookmarks("\Line").Range.Text
strDateiname = strErstezeile
'hier ist die erste zeile ermittelt
intWert = 0 'integer wert mit 0 vorbesetzen
intWert = InputBox("1=Ex 2=Out 3=Word", "suchen")
'MsgBox ausgeben
MsgBox ("Eingabewert=" & intWert)
MsgBox ("Erste zeile=" & strErstezeile)
MsgBox ("Dateiname= " & strDateiname)
'Mit intWErt = 3 neuer versuch
If intWert = 3 Then
'ChangeFileOpenDirectory "D:\$Wolfgang\_wolfdoc\_Office\Word\"
'ChangeFileOpenDirectory "C:\tmp\"
'ActiveDocument.SaveAs2 FileName:="c:\tmp\" & strErstezeile
Set doc = ActiveDocument
doc.SaveAs FileName:="c:\tmp\" & strErstezeile, FileFormat:=wdFormatDocument
End If
MsgBox ("3 ist durch" & FileName)
End Sub

Hier die Fehlerzeile
1634669189555.png


Etwas ist wohl in der Zuordnung falsch, aber was?
Gruß aus Berlin, Puttes
 

Puttes

Herzlich willkommen
Lieber Westfale, das macht nichts. Ich bin ab Sonntag für eine Woche im Rheinland. Will das Grab meines Bruders besuchen der vor einigen Monaten mit 96 gestorben ist und ich konnte aus gesundheitsgründen nicht an der Beerdigung teilnehmen. Freue mich aber auf Deine Nachricht, LG aus Berlin Puttes
 
Anzeige
Oben