Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 01-11-2022, 01:34 PM
AlexCummins AlexCummins is offline Problem with macro searching for overlapping strings and inserting a comment Windows 10 Problem with macro searching for overlapping strings and inserting a comment Office 2007
Novice
Problem with macro searching for overlapping strings and inserting a comment
 
Join Date: Jan 2022
Posts: 2
AlexCummins is on a distinguished road
Default Problem with macro searching for overlapping strings and inserting a comment

Hi all, I'd be grateful for your help on a Word macro problem that I'm facing. I'm not a VBA programmer (just an ordinary Word user) and so I don’t know all the tips and tricks for writing macros: I'd really appreciate your experience here.

I'm writing macros that search for all occurrences of a string, and then include a comment bubble on that string. The problem I've realised is that Word search does not appear to work properly if a string already has an existing comment marked on part of that string.

For example, imagine (using random search terms):

1. (First string) I search in a document for all occurrences of the string "without," and apply a comment to each of those (e.g. "This is string: without").

2. (Second, overlapping, string) I then search in a document for all occurrences of the string "without you," and try to apply a comment to each of those (e.g. "This is string: without you").

Step 2 does not work. The find functionality in Word can't seem to identify "without you" in step 2 where "without" already has a comment applied to it from step 1.

I tried to solve for this by changing comments to footnotes, but I get the same problem: if you have a footnote applied after "without" in step 1, Word search cannot find "without you" in step 2.



I thought wildcards would solve this, but they don't: e.g. the search term "without*you" does not identify either "without you" already marked with a comment, or "without1 you" where a footnote has been applied to "without" previously.

If it helps, here is the (clunky and inefficient I'm sure) macro code I've been using:

Sub CallMacros()
Call 001Without
Call 002WithoutYou
End Sub

Sub 001Without()
Dim range As range
Set range = ActiveDocument.Content
Do While range.Find.Execute("without", False) = True
ActiveDocument.Comments.Add range, "This is string: without"
Loop
End Sub

Sub 002WithoutYou()
Dim range As range
Set range = ActiveDocument.Content
Do While range.Find.Execute("without you", False) = True
ActiveDocument.Comments.Add range, "This is string: without you"
Loop
End Sub

The only solution I've found is a manual workaround: to change the call order so that larger strings are called before shorter ones (e.g. here, calling 002WithoutYou before 001Without). But it seems wrong to use this manual workaround: it relies on getting the call order right, which seems inefficient.

It looks like LibreOffice doesn't have this search issue (e.g. even if a comment is applied to "without", a search will find "without you"), but I don't know how to code macros in LibreOffice and so would prefer not to switch processors.

If there's a much better way of doing this, I'd really appreciate hearing about it, thank you all!!
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
problem with searching at outlook tomer Outlook 1 11-27-2018 06:21 AM
Office Word problem Comment author name jbln Word 1 08-23-2016 04:40 PM
Problem with macro searching for overlapping strings and inserting a comment Inserting comment bubbles in MSWord? amitrus Word VBA 2 02-07-2013 07:53 AM
Comment-Balloon Textsize Problem aerzteohnegrenzen Word 7 05-04-2011 10:45 AM
Problem with macro searching for overlapping strings and inserting a comment update style of all strings available between two specific strings vikrantkale Word 1 03-28-2011 06:13 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 12:27 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft