Veröffentlicht 5. September 200223 j Hi, kennt sich hier jemand mit VB-Makroerstellung in Word aus? :confused: Kann man in Word mittels eines Makros eine Tabelle erstellen? Wenn ja, wie? Es soll in einem Formular eine Zahl eingegeben werden, aus der sich dann die zu erstellende Tabelle bzw. ihre Zeilenanzahl ergibt. Max. Zeilenanzahl: 10 Diese Tabelle beinhaltet wiederum Makros, die aber schon programmiert sind. Bisher gab es im Formular die Tabelle mit den Makros in einer Größe von 4 Zeilen und 2 Spalten. Nun möchte der Kunde diese Tabelle dynamisch gestaltet haben, d.h. er möchte selbst eingeben können, wie groß diese Tabelle sein soll. In dieser Tabelle werden mittels der Makros Adressaten für einen Workflow eingegeben. Weiß vielleicht jemand, ob und wie man mit einem Makro eine solche Tabelle dynamisch in einen Vordruck einbinden kann? Wäre suuuuper!
6. September 200223 j Hallo, Ich hab jetzt erstmal ein kleines Makro aufgezeichnet, indem Ich eine Tabelle mit 4 Zeilen und 2 Spalten erstellt habe. Wenn Du jetzt in den VB-Editor gehst (Alt+F11), steht dort folgender code: [COLOR=blue]Sub[/COLOR] Tabelle() [COLOR=green]' ' Tabelle Makro ' Makro aufgezeichnet am 06.09.02 von EnsignKim '[/COLOR] ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _ 2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _ wdAutoFitFixed [COLOR=blue]End Sub[/COLOR] NumRows:=4 steht für die Zeilen-, NumColumns:=2 für die Spaltenanzahl. Jetzt legst Du ein neues (oder altes) Formular an, das zwei Textboxen und einen Button hat. Mit doppelt Klick auf den Button (oder RMB -> Code anzeigen) erscheint der Code des Formulars. [COLOR=blue]Private Sub[/COLOR] CommandButton1_Click() [COLOR=blue]End Sub[/COLOR] Dort fügst du dein Makro ein: [COLOR=blue]Private Sub[/COLOR] CommandButton1_Click() [COLOR=green]' ' Tabelle Makro ' Makro aufgezeichnet am 06.09.02 von EnsignKim '[/COLOR] ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _ 2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _ wdAutoFitFixed [COLOR=blue]End Sub[/COLOR] Sub Tabelle() und End sub kannst du dabei weglassen, weil es sonst doppelt währe. Die 4 und die 2 ersetzt Du durch die Namen deiner Textboxen (zB. TextBox1 und TextBox2). [COLOR=blue]Private Sub[/COLOR] CommandButton1_Click() [COLOR=green]' ' Tabelle Makro ' Makro aufgezeichnet am 06.09.02 von EnsignKim '[/COLOR] ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=[b]TextBox1[/b], NumColumns:= _ [b]TextBox2 [/b], DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _ wdAutoFitFixed [COLOR=blue]End Sub[/COLOR] Und schon bist du fertig und es läuft. Wenn du jetzt noch Fragen hast, zB. wie das Formular durch ein Makro aufgerufen wird, dann poste das hier.
9. September 200223 j Merci, werde jetzt mal versuchen, das Makro in mein Formular einzubinden. Drück mir die Daumen.
10. September 200223 j Hallo, ich mach mir da keinen großen Kopf. Versuch mal Extra/Makro/aufzeichnen , dann füge eine Tabelle ein, nehme alle Änderung vor die du willst. Stoppe das Makro. Unter Extra/Makro/Makros kannst du dein Makro das du gerade aufgezeichnet hast mit bearbeiten ansehen und den Quellcode an einer anderen Stelle benutzen. Gruß
10. September 200223 j Hi, das Problem hat sich schon erledigt. Aber so einfach, wie Du das meinst, ging es leider nicht. Da die Tabelle in einem Wordformular (.dot) erstellt und in verschiedenen Zellern wiederum Makros aufgerufen werden mußten. Aber danke für den Hilfeversuch. Gruß IT-Girl
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.