Ворд ВБА макрои - Пронађите, пронађите и замените

Ворд ВБА Финд

Овај пример је једноставан макро речи који проналази текст „а“:

Суб СимплеФинд () Селецтион.Финд.ЦлеарФорматтинг Витх Селецтион.Финд .Тект = "а" .Реплацемент.Тект = "" .Форвард = Труе .Врап = вдФиндАск .Формат = Фалсе .МатцхЦасе = Фалсе .МатцхВхолеВорд = Фалсе .МатцхВилдцардс = Фалсе .МатцхСоундсЛике = Фалсе .МатцхАллВордФормс = Фалсе Енд са избором.Финд.Екецуте Енд Суб

Нађи и премести

Овај једноставни макро ће тражити реч „њихов“ и заменити је са „тамо“:

Суб СимплеРеплаце () Селецтион.Финд.ЦлеарФорматтинг Селецтион.Финд.Реплацемент.ЦлеарФорматтинг Витх Селецтион.Финд .Тект = "тхеир" .Реплацемент.Тект = "тхере" .Форвард = Труе .Врап = вдФиндЦонтинуе .Формат = Фалсе .МатцхЦасе = Фалсе .МатцхВхолеВорд = Фалсе .МатцхВилдцардс = Фалсе .МатцхСоундсЛике = Фалсе .МатцхАллВордФормс = Фалсе Енд са избором.Финд.Екецуте Реплаце: = вдРеплацеАлл Енд Суб

Пронађи и замени само у избору

Овај ВБА макро ће пронаћи и заменити текст у избору. Такође ће курзивом заменити замењени текст.

Суб РеплацеИнСелецтион () 'замењује текст САМО у избору. поред тога, замењени текст чини курзивним Селецтион.Финд.ЦлеарФорматтинг Селецтион.Финд.Реплацемент.ЦлеарФорматтинг Витх Селецтион.Финд .Тект = "тхеир" Витх .Реплацемент .Фонт.Италиц = Труе .Тект = "тхере" Енд Витх .Форвард = Труе .Врап = вдФиндСтоп 'ово спречава Ворд да настави до краја документа. Формат = Тачно' желимо да заменимо и форматирање текста. МатцхЦасе = Фалсе .МатцхВхолеВорд = Труе .МатцхВилдцардс = Фалсе .МатцхСоундсЛике = Фалсе .МатцхАллВордФормс = Фалсе Енд Витх Селецтион.Финд.Екецуте Реплаце: = вдРеплацеАлл Енд Суб

Ова линија кода спречава ВБА да настави до краја Ворд документа:

.Врап = вдФиндСтоп 'ово спречава Ворд да настави до краја документа

Ова линија кода означава да треба заменити и обликовање текста:

.Формат = Труе 'желимо да заменимо и форматирање текста

Пронађи и замени само у домету

Уместо да замењујемо текст у целом документу или у избору, можемо рећи ВБА да пронађе и замени само у опсегу. У овом примеру смо дефинисали опсег као први пасус:

Дим оРанге Ас Ранге Сет оРанге = АцтивеДоцумент.Параграфи (1) .Ранге
Суб РеплацеИнРанге () 'замењује текст САМО у опсегу [у овом примеру само у првом пасусу] Дим оРанге Ас Ранге Сет оРанге = АцтивеДоцумент.Параграпхс (1) .Ранге оРанге.Финд.ЦлеарФорматтинг оРанге.Финд.Реплацемент.ЦлеарФорматтинг Витх оРанге.Финд.Реплацемент.ЦлеарФорматтинг витх оРанге. Пронађи .Тект = "њихов" .Реплацемент.Тект = "тамо" .Форвард = Труе. Врап = вдФиндСтоп 'ово спречава Ворд да настави до краја доц .Формат = Фалсе .МатцхЦасе = Фалсе .МатцхВхолеВорд = Фалсе .МатцхВилдцардс = Фалсе .МатцхСоундсЛике = Фалсе .МатцхАллВордФормс = Фалсе Енд са оРанге.Финд.Екецуте Реплаце: = вдРеплацеАлл Енд Суб 
wave wave wave wave wave