Supportnet / Forum / Textverarbeitung
winword
Frage
Hi,
ich suche ein makro das die
4. Seite und die 6. Seite aus einem Dokument löscht.
Vielen Dank.
M.f.G
w.bergmann
Antwort 1 von Warpkern
Moin,
so gehts
Eine Seite im Dokument löschen
Die folgende Routine soll es Ihnen erleichtern eine von Ihnen vorgegeben Seite im Dokument zu löschen. Sie werden mittels eines kleinen Dialoges gefragt, welche Seite gelöscht werden soll:
So bringen Sie das Makro ein und verknüpfen es mit einem neuen Schaltknopf auf der Symbolleiste Ihrer Wahl
--------------------------------------------------------------------------------
Sub SeiteLoeschen()
Titel = "Seite löschen"
Max = ActiveDocument.ComputeStatistics(wdStatisticPages)
Flag = False
While Flag = False
Text = "Welche Seite soll gelöscht werden?" & vbCrLf
Text = Text & "1 - " & Max
Antwort = InputBox(Text, Titel, "1")
If Antwort = "" Then Exit Sub
Dim A As Integer
On Error Resume Next
A = Antwort
Fehler = Err.Number
On Error GoTo 0
If Fehler = 13 Then
MsgBox "Das ist keine gültige Zahl.", vbInformation, Titel
Else
If A > Max Or A < 1 Then
MsgBox "Die Zahl liegt nicht im gültigen Bereich.", vbInformation, Titel
Else
Flag = True
End If
End If
Wend
Selection.GoTo What:=wdGoToPage, Name:=Int(A)
Selection.Bookmarks("\Page").Range.Delete
End Sub
(Diese Routine erleichtert Ihnen das Löschen einer von Ihnen vorgegeben Seite im Dokument.)
Quelle : http://mypage.bluewin.ch/reprobst/WordFAQ/ZS.htm#ZS120206
Gruss Warpkern
so gehts
Eine Seite im Dokument löschen
Die folgende Routine soll es Ihnen erleichtern eine von Ihnen vorgegeben Seite im Dokument zu löschen. Sie werden mittels eines kleinen Dialoges gefragt, welche Seite gelöscht werden soll:
So bringen Sie das Makro ein und verknüpfen es mit einem neuen Schaltknopf auf der Symbolleiste Ihrer Wahl
--------------------------------------------------------------------------------
Sub SeiteLoeschen()
Titel = "Seite löschen"
Max = ActiveDocument.ComputeStatistics(wdStatisticPages)
Flag = False
While Flag = False
Text = "Welche Seite soll gelöscht werden?" & vbCrLf
Text = Text & "1 - " & Max
Antwort = InputBox(Text, Titel, "1")
If Antwort = "" Then Exit Sub
Dim A As Integer
On Error Resume Next
A = Antwort
Fehler = Err.Number
On Error GoTo 0
If Fehler = 13 Then
MsgBox "Das ist keine gültige Zahl.", vbInformation, Titel
Else
If A > Max Or A < 1 Then
MsgBox "Die Zahl liegt nicht im gültigen Bereich.", vbInformation, Titel
Else
Flag = True
End If
End If
Wend
Selection.GoTo What:=wdGoToPage, Name:=Int(A)
Selection.Bookmarks("\Page").Range.Delete
End Sub
(Diese Routine erleichtert Ihnen das Löschen einer von Ihnen vorgegeben Seite im Dokument.)
Quelle : http://mypage.bluewin.ch/reprobst/WordFAQ/ZS.htm#ZS120206
Gruss Warpkern
Antwort 2 von Wilfried Bergmann
Hallo Warpkern,
vielen Dank für die schnelle Antwort.
Das Makro hatte ich schon gefunden.
Ich möchte ohne Abfrage also fest im Makro eingegeben die 4. und 6. Seite löschen.
M.f.G
Bergmann
vielen Dank für die schnelle Antwort.
Das Makro hatte ich schon gefunden.
Ich möchte ohne Abfrage also fest im Makro eingegeben die 4. und 6. Seite löschen.
M.f.G
Bergmann
Antwort 3 von Warpkern
Moin,
ich kannte leider nur diese Quelle, - wie man dieses Makro auf deine Bedürfnisse umschreibt kann ich dir auch nicht sagen :-(( aber ich bin guter Hoffnung das es hier ein oder zwei Makrospezies gibt.
Gruss Warpkern
ich kannte leider nur diese Quelle, - wie man dieses Makro auf deine Bedürfnisse umschreibt kann ich dir auch nicht sagen :-(( aber ich bin guter Hoffnung das es hier ein oder zwei Makrospezies gibt.
Gruss Warpkern
Antwort 4 von samson
Hi Wilfried,
da die Experten auf sich warten lassen, hier ein Tipp:
Diese Zeile
Selection.GoTo What:=wdGoToPage, Name:=Int(4)
Selection.Bookmarks("\Page").Range.Delete
löscht z.B. die 4. Zeile und diese die 6. Zeile
Selection.GoTo What:=wdGoToPage, Name:=Int(6)
Selection.Bookmarks("\Page").Range.Delete
Irgendeine Kontrolle benötigst du aber. Wenn du genau weißt, wieviele Seiten dein Dokumtent hat, evtl. 6, dann könnte es so aussehen:
...
Sub SeiteLoeschen()
Max = ActiveDocument.ComputeStatistics(wdStatisticPages)
If Max < 6 Then
MsgBox "Dokument hat keine 6. Seite.", vbInformation, Titel
Else
Selection.GoTo What:=wdGoToPage, Name:=Int(4)
Selection.Bookmarks("\Page").Range.Delete
Selection.GoTo What:=wdGoToPage, Name:=Int(6)
Selection.Bookmarks("\Page").Range.Delete
MsgBox "Seite 4 und 6 wurde gelöscht", vbInformation, Titel
End If
End Sub
...
da die Experten auf sich warten lassen, hier ein Tipp:
Diese Zeile
Selection.GoTo What:=wdGoToPage, Name:=Int(4)
Selection.Bookmarks("\Page").Range.Delete
löscht z.B. die 4. Zeile und diese die 6. Zeile
Selection.GoTo What:=wdGoToPage, Name:=Int(6)
Selection.Bookmarks("\Page").Range.Delete
Irgendeine Kontrolle benötigst du aber. Wenn du genau weißt, wieviele Seiten dein Dokumtent hat, evtl. 6, dann könnte es so aussehen:
...
Sub SeiteLoeschen()
Max = ActiveDocument.ComputeStatistics(wdStatisticPages)
If Max < 6 Then
MsgBox "Dokument hat keine 6. Seite.", vbInformation, Titel
Else
Selection.GoTo What:=wdGoToPage, Name:=Int(4)
Selection.Bookmarks("\Page").Range.Delete
Selection.GoTo What:=wdGoToPage, Name:=Int(6)
Selection.Bookmarks("\Page").Range.Delete
MsgBox "Seite 4 und 6 wurde gelöscht", vbInformation, Titel
End If
End Sub
...
Antwort 5 von Wilfried Bergmann
Hallo Samson,
vielen Dank für deine Hilfe,
das hat mir schon weitergeholfen.
Gruß
Wilfried
vielen Dank für deine Hilfe,
das hat mir schon weitergeholfen.
Gruß
Wilfried

