Wie einen bestimmten Positionsrahmen per VBA-Makro ansprechen?

21/04/2008 - 23:46 von Susan Seitz | Report spam
Hi,

ich habe mit Word (2003) folgendes Problem:

Ich habe eine Dokumentenvorlage auf der sich links und rechts oben zwei von
mir definierte Positionsrahmen befinden. Im rechten befinden sich Angaben
wie "Ihre Nachricht vom", "Datum" etc. Der linke Rahmen ist vordefiniert für
die Adressatenangabe (und ist leer).

Nun habe ich ein kleines Makro erstellt, welches diese DV aufruft, dann
einen Adressmanager startet. Das klappt auch soweit. Nun ist es aber so,
dass wenn ich auf Einfügen der ausgewàhlten Adressdaten klicke die Daten
nicht in das linke Adress-Positionsrahmenfeld eingesetzt werden, sondern in
den rechten Rahmen; das ist natürlich quatsch...sie sollen ja in den leeren
linken Rahmen. Ich weiß nun nicht wie ich diesen linken Rahmen im Makro (per
VBA) ansprechen kann...

Ist es irgendwie möglich, im Makrotext (Visual Basic Befehl?) den *linken*
Positionsrahmen als "Aktiv" zu setzen, wenn ja, wie?

Wie aktiviere bzw. spreche ich in Makros eins von mehreren vorhandenen
Textfeldern, Positionsrahmen (einer Dokumentenvorlage) etc. korrekt an?
(Einfaches anklicken mittels Maustaste links wàhrend der Makroaufnahme hat
übrigens nicht funktioniert)?

Wenn ich das schaffen würde, würden die Adressdaten nàmlich - korrekt - in
den linken Rahmen eingefügt werden...und alles wàre ok... :-)

Vielen dank für Eure Hilfe!

Viele Grüße
Susan

[Reply-Adresse wird nur sporadisch gelesen]
 

Lesen sie die antworten

#1 Thomas Gahler
23/04/2008 - 08:01 | Warnen spam
Hallo Susan



Wie aktiviere bzw. spreche ich in Makros eins von mehreren vorhandenen
Textfeldern, Positionsrahmen (einer Dokumentenvorlage) etc. korrekt an?
(Einfaches anklicken mittels Maustaste links wàhrend der Makroaufnahme hat
übrigens nicht funktioniert)?


Textfelder usw. kannst du einen Namen geben (.Name-Eigenschaft), dann kannst
du die mit dem Namen direkt ansprechen.

Doch dein "ansprechen" gefàllt mir nicht. Tönt wie wen du den Cursor
positionieren willst (=arbeiten mit dem .Selection-Objekt) und dann dort den
Text einfügen möchtest.
Mein Tipp, füge dort wo du die Adresse benötigst eine Textmarke ein, diese
kannst du ebenfalls bearbeiten (via .Range-Objekt) und dann geht das Ganze
ohne Cursor verschieben.



Text in eien Textmarke einfügen geht so...

Sub Demo1()
Dim cText As String
Dim oRNG As Range
Dim oBM As Bookmark


cText = "ABC"


If ActiveDocument.Bookmarks.Exists("Test") Then
Set oRNG = ActiveDocument.Bookmarks("Test").Range


oRNG.Text = cText


Set oBM = ActiveDocument.Bookmarks.Add( _
Name:="Test", _
Range:=oRNG)
End If
End Sub





Thomas Gahler
MVP für WordVBA
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)


- Windows XP (SP2), Office XP (SP3)

Ähnliche fragen