- #1
S
simon 123
Guest
Hallo!
Ich quaele mich als Anfaenger (unfreiwillig) noch immer mit meinem Makro, mittlerweile ist es doch zu gross und unuebersichtlich und ich muss es auf irgend eine Art in eine Schleife einbauen.
Leider habe ich viel zu wenig Kenntnisse dazu, deshalb meine Frage: Wo finde ich hilfreiche Internetseiten, wo Word/Makro/Array erklaert wird?
Vielleicht hat ja auch jmnd von Euch Lust?
Ich habe einen groesseren Ablauf, ein Ausschnitt:
***************************************
Windows(1).Activate
Selection.MoveLeft Unit:=wdCharacter, Count:=100
Selection.MoveUp Unit:=wdLine, Count:=100
Selection.MoveDown Unit:=wdLine, Count:=3
' XXX Dieses Count:=3 soll in der Schleife hochgezaehlt werden
Selection.Find.ClearFormatting
With Selection.Find
.Text = ,
.Replacement.Text =
.Forward = True
End With
Selection.Find.Execute
Selection.Find.Execute
ZeichenEins = Selection.Information (wdFirstCharacterColumnNumber)
Selection.Find.Execute
ZeichenZwei = Selection.Information (wdFirstCharacterColumnNumber)
TextLaenge = ZeichenZwei - ZeichenEins
Selection.MoveLeft Unit:=wdCharacter, Count:=TextLaenge, Extend:=wdExtend
ErsetzText = Selection
Windows(2).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = &&!--003/--!>
' XXX Und das 003 soll in der Schleife hochgezaehlt werden
.Replacement.Text = ErsetzText
.Forward = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
******************************************************
(der Abschnitt geht zu einer Zeile, markiert den Text zwischen zwei Komma und fuegt in im zweiten Fenster an bestimmter Stelle wieder ein)
Mag mir jemand helfen, wie ich diesen Ausschnitt in eine Funktion bekomme, die automatisch die beiden genannten Bereiche in jedem Durchlauf um +1 erhoeht? Die Schleife soll laufen, bis ein bestimmter Wert (22) erreicht wurde.
Aber, wie gesagt, ich bin mir bewusst, dass ich an der untersten Grenze der Makro-Basics herumkratze und ein guter Link, wo so etwas erklaert wird, hilft mir auch!!
Danke,
Simon
Ich quaele mich als Anfaenger (unfreiwillig) noch immer mit meinem Makro, mittlerweile ist es doch zu gross und unuebersichtlich und ich muss es auf irgend eine Art in eine Schleife einbauen.
Leider habe ich viel zu wenig Kenntnisse dazu, deshalb meine Frage: Wo finde ich hilfreiche Internetseiten, wo Word/Makro/Array erklaert wird?
Vielleicht hat ja auch jmnd von Euch Lust?
Ich habe einen groesseren Ablauf, ein Ausschnitt:
***************************************
Windows(1).Activate
Selection.MoveLeft Unit:=wdCharacter, Count:=100
Selection.MoveUp Unit:=wdLine, Count:=100
Selection.MoveDown Unit:=wdLine, Count:=3
' XXX Dieses Count:=3 soll in der Schleife hochgezaehlt werden
Selection.Find.ClearFormatting
With Selection.Find
.Text = ,
.Replacement.Text =
.Forward = True
End With
Selection.Find.Execute
Selection.Find.Execute
ZeichenEins = Selection.Information (wdFirstCharacterColumnNumber)
Selection.Find.Execute
ZeichenZwei = Selection.Information (wdFirstCharacterColumnNumber)
TextLaenge = ZeichenZwei - ZeichenEins
Selection.MoveLeft Unit:=wdCharacter, Count:=TextLaenge, Extend:=wdExtend
ErsetzText = Selection
Windows(2).Activate
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = &&!--003/--!>
' XXX Und das 003 soll in der Schleife hochgezaehlt werden
.Replacement.Text = ErsetzText
.Forward = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
******************************************************
(der Abschnitt geht zu einer Zeile, markiert den Text zwischen zwei Komma und fuegt in im zweiten Fenster an bestimmter Stelle wieder ein)
Mag mir jemand helfen, wie ich diesen Ausschnitt in eine Funktion bekomme, die automatisch die beiden genannten Bereiche in jedem Durchlauf um +1 erhoeht? Die Schleife soll laufen, bis ein bestimmter Wert (22) erreicht wurde.
Aber, wie gesagt, ich bin mir bewusst, dass ich an der untersten Grenze der Makro-Basics herumkratze und ein guter Link, wo so etwas erklaert wird, hilft mir auch!!
Danke,
Simon