Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1628to1632
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schleife in

Schleife in
12.06.2018 12:31:04
Thorsten
Hallo,
ich habe eine zu groß geratene VBA-Prozedur (also Code der größer als 64 KB ist).
Grundsätzlich ist das vermutlich nicht problematisch. Allerdings ist die Aufgabe des
Makro recht komplex. Es muss aus verschiedenen Word-Dokumenten klar definierte Inhaltssteuerlemente identifizieren und auslesen. Dafür wird Word nicht wirklich geöffnet, bzw. unmittelbar nach dem Auslesevorgang wieder geschlossen. Das alles funktioniert bis zu einer gewissen Größe auch tadellos. Nun sind allerdings ein paar Inhaltssteuerelemente hinzugekommen und ich habe das Problem mit der zu großen Prozedur..Prozedur teilen ist kaum möglich, da es vor lauter For/If befehlen am Anfang und am ENde nur so wimmelt.
Jetzt meine Frage: kann ich für nachfolgende COde-Zeilen eine Schleife einbauen? und wie würde die aussehen?
strKi0 = myXMLPart.SelectSingleNode("/root/Ki0").Text
strKi1 = myXMLPart.SelectSingleNode("/root/Ki1").Text
strKi2 = myXMLPart.SelectSingleNode("/root/Ki2").Text
strKi3 = myXMLPart.SelectSingleNode("/root/Ki3").Text
strKi4 = myXMLPart.SelectSingleNode("/root/Ki4").Text
strKi5 = myXMLPart.SelectSingleNode("/root/Ki5").Text
strKi6 = myXMLPart.SelectSingleNode("/root/Ki6").Text
strKi7 = myXMLPart.SelectSingleNode("/root/Ki7").Text
strKi8 = myXMLPart.SelectSingleNode("/root/Ki8").Text
strKi9 = myXMLPart.SelectSingleNode("/root/Ki9").Text
Vielen Dank schon mal vorab...

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife in
12.06.2018 12:35:45
Rudi
Hallo,
1.: strKi als Array dimensionieren.
dim strKi(9)
2.:
For i = 0 to 9
strKi(i) = myXMLPart.SelectSingleNode("/root/Ki" &i).Text
Next i
Gruß
Rudi
AW: Schleife in
12.06.2018 13:39:26
Thorsten
Hallo Rudi,
vielen Dank für die schnelle Antwort.
Die For-Steuervariable "i" ist im Code bereits an anderer Stelle enthalten. Kann ich statt "i" einen anderen Buchstaben nehmen oder ist er zwingend für die Schleifenfunktion?
ob i oder iiiggggiitttt spielt keinen Tango (owT)
12.06.2018 13:41:53
EtoPHG

AW: Schleife in
12.06.2018 13:58:36
Daniel
Hi
du kannst als Variablenbezeichnung eigentlich jeden beliebigen Text in beliebiger Länge nehmen, solange es ein Wort ist (dh es dürfen keine Leer-, Rechen- oder Satzzeichen vorkommen)
weiters zum Thema Variablen findest du hier:
http://www.online-excel.de/excel/singsel_vba.php?f=4
Gruß Daniel
Anzeige
AW: Schleife in
12.06.2018 15:59:47
Thorsten
Hmm.. so richtig gefunzt hat es noch nicht. Mache ich vielleicht etwas in der Reihenfolge oder so falsch?
Dim strKi(9)
For y = 0 To 9
strKi(y) = myXMLPart.SelectSingleNode("/root/Ki" & y).Text
Next y
strKi0 = myXMLPart.SelectSingleNode("/root/Ki0").Text
mit der Zeile "strKi0" beginnt mein alter Code. Aber es wird eben auch nur das eine Steuerelement (Ki0)
ausgelesen (müssen die alten Codezeilen - 10 sind es ja immer - eigentlich komplett verschwinden, oder muss wenigstens eine bestehen bleiben auf die sich die Schleife dann bezieht?). Wenn ich die anderen Zeilen einzeln wieder darunter kopiere (also Ki1, Ki2 etc.) werden
alle Steuerelemente ausgelesen. Demnach habe ich wohl irgend einen Fehler in der Schleife?
Vielen Dank erneut für eure Mühe...
Anzeige
AW: Schleife in
13.06.2018 07:37:15
Sheldon
Moin Thorsten,
die alten 10 Codezeilen müssen weg. Ausgelesen sind alle 10 Steuerelemente. Die findest du nun in der Variablen strKi(0) bis strKi(9). Das ist eine Array-Variable, die alle 10 Werte speichert. Nicht mehr zehn einzelne Variablen.
Gruß
Sheldon

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige