Zeilen kopieren

Hallo Leute! bin noch ein kompletter Anfänger was „Programmierung“ anbelangt also bitte keine blöden Meldungen *liebschau* *gg*.

STATUS: SEHR DRINGEND (Problem in der Firma)

Ich habe eine Dokumentenvorlage welche aus einem Drittprogramm durch Textmarken mit bestimmten Werten (z.B.: Adresse) befüllt wird.

Jetzt bräuchte mein Kunde aber genau diese Werte an einer anderen Position im Dokument noch einmal. Leider lassen sich diese Textmarken aber nicht mehrmals in einem Dokument einfügen.

Ich würde gerne die Zeilen welche schon befüllt sind durch VBA auch an die andere Position einfach durch „copy&paste“ kopieren.

Möglich ? Ja/Nein???

Ich währe euch echt dankbar für schnellste Hilfe

Wenn euch das was hilft, das ist der Code der das Word Formular durch die Textmarken befüllt:

Sub Autoopen()


’ Kplus Makro
’ Makro erstellt am 27.04.2001 von Rhomberg Martin

If ActiveDocument.Bookmarks.Count >= 1 And InStr(ActiveDocument, „.dot“) = 0 Then
chan = DDEInitiate(App:=„OMNIS7“, Topic:=„HK_PROG“)
If chan „“ Then
If ActiveDocument.Bookmarks.Count >= 1 Then
For Each aBookmark In ActiveDocument.Bookmarks
If aBookmark.Name „weiter“ Then
If InStr(aBookmark.Name, „_“) > 0 Then
ActiveDocument.Bookmarks(aBookmark.Name).Select
Selection.InsertAfter DDERequest(Channel:=chan, Item:=aBookmark.Name)
End If
If aBookmark.Name = „DATUM“ Then
ActiveDocument.Bookmarks(aBookmark.Name).Select
Selection.InsertAfter Date
End If

End If
Next aBookmark

For Each aBookmark In ActiveDocument.Bookmarks
If aBookmark.Name „weiter“ Then
If InStr(aBookmark.Name, „_“) > 0 Or aBookmark.Name = „DATUM“ Then
ActiveDocument.Bookmarks(aBookmark.Name).Delete
End If
End If
Next aBookmark
End If
DDETerminate Channel:=chan
End If
End If
End Sub

Hi!

Kann dir eigentlich nicht direkt weiterhelfen, aber da es schnell sein muss hilft da ein kleiner Trick ;o))

wenn du an die doppelten bokkmarks am ende _xxx hängst kannst du sie ja doppelt im Text plazieren, gelle ;o) Nu muttu noch kurz den Conde anpassen, d. h. den Request nur den „richtigen“ bookmarknamen angeben…

If ActiveDocument.Bookmarks.Count >= 1 And
InStr(ActiveDocument, „.dot“) = 0 Then
chan = DDEInitiate(App:=„OMNIS7“, Topic:=„HK_PROG“)
If chan „“ Then
If ActiveDocument.Bookmarks.Count >= 1 Then
For Each aBookmark In ActiveDocument.Bookmarks
If aBookmark.Name „weiter“ Then
If InStr(aBookmark.Name, „_“) > 0 Then

ActiveDocument.Bookmarks(aBookmark.Name).Select

if instr(abookmark.name,"_xx") > 0 then
help = mid(abookmark.name,1,instr(abookmark.name,"_xx") - 1)
Selection.InsertAfter:smiley:DERequest(Channel:=chan, Item:=help)
else
Selection.InsertAfter:smiley:DERequest(Channel:=chan, Item:=aBookmark.Name)
endif

Ist ejtzt nur ein Quickhack, aber sollte klappen…

Bernd

docvariablen
hallo florian,

ich würde an den weiteren stellen im dokument docvariablen einbauen(einfügen/feld/dokuautoma…)

in vba weisst du der variable einfach einen wert zu, fertig!

ActiveDocument.Variables(„Feld9“) = doku_Fusstext9

um die variablen auf „“ zu setzen, folgenden code einmalig ausfürehn:frowning:damit, wenn die variable icht befüllt wurde, keine fehlermeldung dasteht…)

ActiveDocument.Variables(„Feld9“) = " "

For Each feld In ActiveDocument.StoryRanges 'alle felder updaten
feld.Fields.Update
While Not (feld.NextStoryRange Is Nothing)
Set feld = feld.NextStoryRange
feld.Fields.Update
Wend
Next

hoffe es hilft

gruß

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]