Makro, um Text in Positionsrahmen zu löschen

Moderator: ModerationP

Makro, um Text in Positionsrahmen zu löschen

Beitragvon blue2 » 17. Jun 2014, 18:59

Hallo,

ich habe ein Worddokument mit etlichen (an die 800) Positionsrahmen neben den Absätzen.
In die Positionsrahmen wurde bereits (jeweils manuell) eine sog. "Randnummer" eingetragen (es handelt sich um ein Buchprojekt).

Dieser Text in den Positionsrahmen soll nun aber gelöscht werden (die Positionsrahmen selbst sollen jedoch bestehen bleiben!).

Dafür suche ich ein Makro und wäre für jede Hilfe sehr dankbar! :)
Anscheinend gibt es Makros, um leere Absätze in Positionsrahmen löschen zu lassen. Dann müsste es doch sicherlich auch möglich sein, den kompletten Text in Positionsrahmen zu löschen?

(Der Hintergrund ist folgender: Da in der Neuauflage (wegen Einfügung neuer Absätze etc.) viele Randnummern geändert werden müssten, wäre es viel praktischer, wenn statt den manuell eingetragenen Randnummern die Nummern in den Positionsrahmen automatisch nummeriert wären.
Eine automatische Nummeriung an sich ist ja auch problemlos mit Word möglich. Das Problem ist nur folgendes: Wenn man die automatische Nummerierung einschaltet, bleiben die manuell eingetragenen Zahlen ja weiterhin bestehen, d.h. in den Positionsrahmen würden sich dann immer zwei Zahlen befinden.
Deshalb soll die manuell eingetragene Zahl per Makro in jedem Rahmen gelöscht werden, um anschließend eine automatischer Nummerierung vornehmen zu können.)
Vielen Dank im Voraus!
Zuletzt geändert von blue2 am 17. Jun 2014, 19:43, insgesamt 1-mal geändert.
blue2
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 17. Jun 2014, 18:39

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon Miss Marple » 17. Jun 2014, 19:36

Hi,

wenn nur die "Randnummern" in Positionsrahmen stehen = keine weitere Positionsrahmen, dann sollten die paar Zeilen schon reichen:
Code: Alles auswählen
Sub DelFramgeText()
    Dim oFrame As Frame

    Application.ScreenUpdating = False
    For Each oFrame In ActiveDocument.Frames
        oFrame.Range.Delete
    Next oFrame
End Sub

Gruß
MM
Miss Marple
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1568
Registriert: 24. Jan 2014, 08:13
Wohnort: 52° 15' 53" N, 10° 31' 26" E

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon blue2 » 17. Jun 2014, 20:16

Hi MM,

besten Dank für die schnelle Hilfe!
Das ist genau das, was ich gesucht habe.

Wie du schon geschrieben hast, darf es natürlich keine sonstigen Positionsrahmen (mit Text, der nicht gelöscht werden soll) geben.
Im mir vorliegenden Dokument gibt es normalerweise auch keine weiteren Positionsrahmen, es müsste also passen.

Um auf Nummer sicher zu gehen: Gäbe es eine Möglichkeit, alle Positionsrahmen in einem Dokument aufzufinden? Wenn es den Eintrag im Menü "Gehe zu" geben würde, könnte man ja einfach von einem Positionsrahmen zum nächsten klicken. Den Eintrag Positionsrahmen (oder Frame) konnte ich im Gehe-zu-Menü aber leider nicht finden.
blue2
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 17. Jun 2014, 18:39

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon Miss Marple » 17. Jun 2014, 20:29

Normalerweise sind solche Positionsrahmen mit einer Formatvorlage verknüpft (formatiert) und die wird in diesem Fall auch nur für diese Positionsranhmen verwendet. Das könnte man in das Makro mit aufnehmen. Denn weshalb willst du dich dann letztentlich nochmal mit GeheZu durch 800 Frames quälen ???

MM
Miss Marple
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1568
Registriert: 24. Jan 2014, 08:13
Wohnort: 52° 15' 53" N, 10° 31' 26" E

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon blue2 » 17. Jun 2014, 20:43

Ja, der Text in den Positionsrahmen ist in der Tat mit einer bestimmten Formatvorlage formatiert.
Ließe sich das auf einfache Art und Weise in das Makro mit aufnehmen?

(Durch 800 Frames hätte ich mich natürlich nicht geklickt :D; es würde wohl auch genügen, v.a. am Anfang des Dokuments und an bestimmten "verdächtigen" Stellen nach Positionsrahmen zu suchen.)
blue2
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 17. Jun 2014, 18:39

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon Miss Marple » 17. Jun 2014, 21:03

Code: Alles auswählen
Sub DelFramgeText()
    Dim oFrame As Frame

    Application.ScreenUpdating = False
    For Each oFrame In ActiveDocument.Frames
        If oFrame.Range.Style = "NameFormatvorlage" Then oFrame.Range.Delete
    Next oFrame
End Sub
Musst nur den Namen der Formatvorlage anpassen.

Wegen solcher 'Idiotenarbeiten' hab ich mal mit VBA-Programmierung begonnen :lol:

MM
Miss Marple
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1568
Registriert: 24. Jan 2014, 08:13
Wohnort: 52° 15' 53" N, 10° 31' 26" E

Re: Makro, um Text in Positionsrahmen zu löschen

Beitragvon blue2 » 17. Jun 2014, 21:28

:)
Dankeschön!
blue2
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 17. Jun 2014, 18:39


Zurück zu Word Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste