Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
Email filter
I have a 50 page word doc converted from pdf that has 1 email address per
page. Is it possible to filter/capture only email addresses at once instead of copying and pasting from each page? |
#2
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
Email filter
On Mon, 8 Mar 2010 17:50:01 -0800, D Wood
wrote: I have a 50 page word doc converted from pdf that has 1 email address per page. Is it possible to filter/capture only email addresses at once instead of copying and pasting from each page? Yes, it's possible, by using a wildcard search in a macro. Wildcards are explained in http://www.gmayor.com/replace_using_wildcards.htm. The following macro will find the email addresses (that is, any sequence of letters, numbers, and periods on both sides of an @ symbol) and copy them into a new document, one per paragraph. See http://www.gmayor.com/installing_macro.htm if needed. Sub CollectEmailAddresses() Dim srcDoc As Document, dstDoc As Document Dim oRg As Range Set srcDoc = ActiveDocument Set dstDoc = Documents.Add Set oRg = srcDoc.Range With oRg.Find .MatchWildcards = True .Text = "[A-Za-z0-9.]{1,}\@[A-Za-z0-9.]{1,}" .Wrap = wdFindStop While .Execute dstDoc.Range.InsertAfter oRg.Text & vbCr Wend End With End Sub -- Regards, Jay Freedman Microsoft Word MVP FAQ: http://word.mvps.org Email cannot be acknowledged; please post all follow-ups to the newsgroup so all may benefit. |
#3
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
Email filter
On Mon, 8 Mar 2010 17:50:01 -0800, D Wood
wrote: I have a 50 page word doc converted from pdf that has 1 email address per page. Is it possible to filter/capture only email addresses at once instead of copying and pasting from each page? Yes, it's possible, by using a wildcard search in a macro. Wildcards are explained in http://www.gmayor.com/replace_using_wildcards.htm. The following macro will find the email addresses (that is, any sequence of letters, numbers, and periods on both sides of an @ symbol) and copy them into a new document, one per paragraph. See http://www.gmayor.com/installing_macro.htm if needed. Sub CollectEmailAddresses() Dim srcDoc As Document, dstDoc As Document Dim oRg As Range Set srcDoc = ActiveDocument Set dstDoc = Documents.Add Set oRg = srcDoc.Range With oRg.Find .MatchWildcards = True .Text = "[A-Za-z0-9.]{1,}\@[A-Za-z0-9.]{1,}" .Wrap = wdFindStop While .Execute dstDoc.Range.InsertAfter oRg.Text & vbCr Wend End With End Sub -- Regards, Jay Freedman Microsoft Word MVP FAQ: http://word.mvps.org Email cannot be acknowledged; please post all follow-ups to the newsgroup so all may benefit. |
#4
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
Email filter
Macro to extract all of the email addresses from a document
Sub CopyAddressesToOtherDoc() Dim Source As Document, Target As Document, myRange As Range Set Source = ActiveDocument Set Target = Documents.Add Application.ScreenUpdating = False Source.Activate Selection.HomeKey Unit:=wdStory Selection.Find.ClearFormatting With Selection.Find Do While .Execute(findText:="[+0-9A-z._-]{1,}\@[A-z.]{1,}", _ MatchWildcards:=True, Wrap:=wdFindStop, Forward:=True) = True Set myRange = Selection.Range Target.Range.InsertAfter myRange & vbCr Loop End With Selection.HomeKey Unit:=wdStory Target.Activate End Sub -- 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, originally posted via msnews.microsoft.com "D Wood" wrote in message ... I have a 50 page word doc converted from pdf that has 1 email address per page. Is it possible to filter/capture only email addresses at once instead of copying and pasting from each page? |
#5
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
Email filter
Macro to extract all of the email addresses from a document
Sub CopyAddressesToOtherDoc() Dim Source As Document, Target As Document, myRange As Range Set Source = ActiveDocument Set Target = Documents.Add Application.ScreenUpdating = False Source.Activate Selection.HomeKey Unit:=wdStory Selection.Find.ClearFormatting With Selection.Find Do While .Execute(findText:="[+0-9A-z._-]{1,}\@[A-z.]{1,}", _ MatchWildcards:=True, Wrap:=wdFindStop, Forward:=True) = True Set myRange = Selection.Range Target.Range.InsertAfter myRange & vbCr Loop End With Selection.HomeKey Unit:=wdStory Target.Activate End Sub -- 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, originally posted via msnews.microsoft.com "D Wood" wrote in message ... I have a 50 page word doc converted from pdf that has 1 email address per page. Is it possible to filter/capture only email addresses at once instead of copying and pasting from each page? |
Reply |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Works Filter | Microsoft Word Help | |||
Filter | Tables | |||
filter keys | Microsoft Word Help | |||
How do I filter a document in WORD to show only email addresses? | Microsoft Word Help | |||
Filter Key | Microsoft Word Help |