![]() |
#1
|
|||
|
|||
![]() someone who is good a programing may be able to help me here, i am trying to set up a macro to mimic a medical software i use at work. basically anytime i press the F2 key in whatever word document i am in i want the macro to highlight the next set of "***" in my document so i can start typing and it will replace the 3 asterisk's |
#2
|
||||
|
||||
![]()
You can record a macro that will do that. e.g.
Code:
Sub Macro1() Selection.HomeKey wdStory Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "***" .Wrap = wdFindStop .Format = False .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute End Sub Code:
Sub Macro2() Dim oRng As Range Dim oCC As ContentControl Dim i As Integer: i = 0 Set oRng = ActiveDocument.Range With oRng.Find .Wrap = wdFindContinue Do While .Execute("***") i = i + 1 oRng.Text = "" Set oCC = oRng.ContentControls.Add(wdContentControlRichText) oCC.Title = "Text" & i oCC.Tag = oCC.Title oCC.LockContentControl = True oRng.End = oRng.End + 1 oRng.Collapse 0 Loop End With End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#3
|
|||
|
|||
![]()
thank you so much this is going to help me a lot!, since you seem to be very quick with the code (i havent tried the second one yet im still working out how this all works), do you know if there is a way to instead of selecting the *** i could select the next group of lets say red text or bold text or whatever is easiest, so if i wrote "put patient name here" in red text i could hit F2 and have it select that group of text for me to replace?
|
#4
|
||||
|
||||
![]()
You can assign the following to a key -
Code:
Sub FindRed() Selection.Find.ClearFormatting Selection.Find.Font.Color = wdColorRed Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute End Sub You can also use that add-in to add 'editors' to the fields and protect the form as read only. You can then only enter text in the fields.
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#5
|
|||
|
|||
![]()
I greatly appreciate you're help with all this!
|
![]() |
Tags |
highlighting, macro |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Making a Outlook macro that opens a Excel Workbook | bjornltd | Outlook | 0 | 07-03-2021 06:39 AM |
![]() |
LadyAna | Word | 1 | 12-06-2014 10:39 PM |
![]() |
bakhesh | Mail Merge | 1 | 09-29-2013 07:58 PM |
![]() |
brewsta | Word VBA | 3 | 12-11-2012 03:29 PM |
![]() |
Joshocom | Word | 1 | 03-16-2010 05:03 PM |