WORD: in mehreren Tabellen letzte Spalte löschen

  • Hallo Leute,

    ich habe ein Worddokument mit ca. 1.500 Tabellen! In JEDER muss die letzte Spalte gelöscht werden. Ich kenne mich mit Makros in keinster Weise aus, habe es aber geschafft, eines aufzuzeichnen, so dass ich jetzt nur noch jede Tabelle markieren muss und mit einem Mausklick die letzte Spalte löschen kann.

    Allerdings muss ich das ja immer noch für 1.500 Tabellen einzeln machen. Kann man das Makro so gestalten, dass es den Befehl automatisch für ALLE Tabellen ausführt?

    Thx & MfG...

    [Edit] Hier der Code dazu:

    Das Makro formatiert die Tabelle noch ein bissel, da ist also nicht nur das mit dem Spalte löschen drin. Allerdings bekomme ich auch jedes mal einen "Laufzeitfehler 5662" beim Ausführen des Makros. Dennoch funktioniert es aber.

  • Wer erstellt ein Word-Doc mit 1500 Tabellen? :shock:

    Kenne mich mit den Word-Macros auch nicht so gut aus, aber folgender Vorschlag:

    Erweitere es um den Befehl "gehe zu ...">Tabelle und nach dem Bearbeiten der Tabelle eine Wiederholung des Ganzen (ad infinitum oder - wenn Du weißt wie - um 1499 mal).

    FX 3.6.28/Mac OS X (10.4.11)
    FX 24.0/Mac OS X (10.6.8 )
    FX 24.0/Mac OS X (10.8.3)

  • Naja, die wurden nicht in Word erstellt, sondern in 'nem Statistikprogramm. Da kommt man schon mal auf so eine Anzahl! :wink:
    Da man in diesem Statistikprogramm aber nur sehr schlecht Tabellen formatieren kann, muss ich den Schritt über WORD gehen.

    Aber DANKE!!! Das mit dem "gehe zu"-Befehl klappt wunderbar. Jetzt muss ich zwar 1.500 mal auf den Button klicken, aber das ist nicht so schlimm, ist ja jetzt quasi halbautomatisch. Wenn allerdings noch jmd. weiß, wie ich um diesen Befehl 'ne Schleife baue bis zum Ende des Dokumentes, wäre ich noch dankbarer als eh schon! :wink:

    MfG...

  • Ist leider zu lange her, dass ich mich damit beschäftigt habe. Der Makro-Editor (Visual Basic-Editor) hat aber eine Hilfefunktion, da müsste es eigentlich drinstehen. Gaaaanz vielleicht geht es schon mit dem normalen Befehl "weitersuchen" (F3) - hab jetzt leider keine Zeit, es selbst auszuprobieren.

    FX 3.6.28/Mac OS X (10.4.11)
    FX 24.0/Mac OS X (10.6.8 )
    FX 24.0/Mac OS X (10.8.3)

  • Hallo,
    vielleicht klappt es mit einer "FOR ..... NEXT"-Schleife, wobei der FOR-Befehl noch vor dem GOTO-Befehl (GEHEZU) stehen muss.
    Bin leider schon zu lange aus diesem Geschäft draußen und hatte damals BASIC-Kenntnisse, die sich doch etwas von VISUAL-BASIC unterscheiden. Aber wie bereits oben erwähnt, hilft die Hilfefunktion des Editors ein wenig weiter.

    Gruß Mathe41
    WIN 7 Ultimate (64bit) SP1 - Mein Fx

  • Ich hab von der Programmierung leider auch keine Ahnung.

    Das mit der for-next-Schleife würde ich evtl. noch hinbekommen. Allerdings wüsste ich nicht, was ich da jeweils als Argument bzw. Bedingung eingeben sollte.

    Ich müsste ja eine Starttabelle deklarieren und die Schleife am Ende des Dokumentes beenden. Allerdings habe ich keine Ahnung, wie das gehen soll.

    Naja, ich mach' jetzt erstmal manuell weiter. Wenn noch jmd. 'ne Idee hat, bevor ich meine 1.500 Tabellen fertig habe, wäre das super! :wink:

    MfG...

  • Zum Löschen der letzten Spalte in allen Tabellen reicht:

    Code
    Dim oTab As Table
    
    
    For Each oTab In ActiveDocument.Tables
      oTab.Columns(oTab.Columns.Count).Delete
    Next oTab


    Das Formatieren würde ich -soweit es geht- einer Formatvorlage überlassen (Fragen dazu kann ich aber weniger beantworten).