Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
Hi-
I have the following VBA code in a mailmerge: With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" .ExtendMode = True .Find.Execute findtext:="[end of transmittal]" .Delete End With This will delete all text between (and including) "[end of transmittal]". But, what I really want to do, is to deletle all text from "[end of transmittal]" to the end of the document. How would I change the above to accomplish this? Thanks, Marty |
#2
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
Try:
Sub Scratchmacro() Dim oRng As Word.Range Set oRng = ActiveDocument.Range With oRng With .Find .Text = "[end of transmittal]" If .Execute Then With oRng .Collapse wdCollapseEnd .End = ActiveDocument.Range.End .Delete End With End If End With End With End Sub Marty wrote: Hi- I have the following VBA code in a mailmerge: With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" .ExtendMode = True .Find.Execute findtext:="[end of transmittal]" .Delete End With This will delete all text between (and including) "[end of transmittal]". But, what I really want to do, is to deletle all text from "[end of transmittal]" to the end of the document. How would I change the above to accomplish this? Thanks, Marty |
#3
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
This should do it
Dim delrange as Range With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" End With Set delrange = Selection.Range delrange.Start=delrange.End+1 delrange.End = ActiveDocument.Range.End delrange.Delete -- Hope this helps. Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis. Doug Robbins - Word MVP "Marty" wrote in message ... Hi- I have the following VBA code in a mailmerge: With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" .ExtendMode = True .Find.Execute findtext:="[end of transmittal]" .Delete End With This will delete all text between (and including) "[end of transmittal]". But, what I really want to do, is to deletle all text from "[end of transmittal]" to the end of the document. How would I change the above to accomplish this? Thanks, Marty |
#4
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
Thanks. It worked just fine.
-Marty "Doug Robbins - Word MVP" wrote: This should do it Dim delrange as Range With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" End With Set delrange = Selection.Range delrange.Start=delrange.End+1 delrange.End = ActiveDocument.Range.End delrange.Delete -- Hope this helps. Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis. Doug Robbins - Word MVP "Marty" wrote in message ... Hi- I have the following VBA code in a mailmerge: With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" .ExtendMode = True .Find.Execute findtext:="[end of transmittal]" .Delete End With This will delete all text between (and including) "[end of transmittal]". But, what I really want to do, is to deletle all text from "[end of transmittal]" to the end of the document. How would I change the above to accomplish this? Thanks, Marty |
#5
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
I tried this, but it did not seem to work. Perhaps it was not getting to the
beginning of the document. However, Doug also sent some code, and that did work. Thanks for you help. It helps me to understand what is happening in the code. -Marty "Greg Maxey" wrote: Try: Sub Scratchmacro() Dim oRng As Word.Range Set oRng = ActiveDocument.Range With oRng With .Find .Text = "[end of transmittal]" If .Execute Then With oRng .Collapse wdCollapseEnd .End = ActiveDocument.Range.End .Delete End With End If End With End With End Sub Marty wrote: Hi- I have the following VBA code in a mailmerge: With Selection .HomeKey unit:=wdStory .Find.Execute findtext:="[end of transmittal]" .ExtendMode = True .Find.Execute findtext:="[end of transmittal]" .Delete End With This will delete all text between (and including) "[end of transmittal]". But, what I really want to do, is to deletle all text from "[end of transmittal]" to the end of the document. How would I change the above to accomplish this? Thanks, Marty |
Reply |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Warn before deleting a Word document | Microsoft Word Help | |||
Deleting text within a document | Microsoft Word Help | |||
deleting a blank page in a document in Word 2003 | Microsoft Word Help | |||
macros and SharePoint WSS document libraries | New Users | |||
deleting identify when saving document | Microsoft Word Help |