I wrote a small utility using the RSLogix model that automates search & replace operations using a csv file.
A client had a number of machines that consisted of essentially identical hardware wired to completely different I/O addresses. (The machines were updated/added to over the years and sensors etc. were simply slapped in wherever they seemed to fit best on that particular day).
Anyway, part of the project was to propagate some standard coding conventions across the machines without having to rewire anything. I wasn't terribly excited about manually converting the code from one addressing scheme to the next, so threw together this script to do it for me.
It's also come in handy on several other occasions - for example, a storage magazine of conveyors (say 8 conveyors long by 8 conveyors high). All the conveyors used the same code but had different I/O, indirects, etc.
To use the utility, create a .csv file with two columns: Column 1 represents the address to Search for, Column 2 represents the address to Replace with. After you create your CSV file, press 'ALT-F10' to access the VBA menu, choose the 'CSVSearchReplace' macro and follow the instructions on the popups.
You can select whether to search & replace within a single ladder file or to perform a global replace throughout the entire project. Global search & replaces can take a while if you have a large number of ladder files, so there's also a status window to indicate which file is currently being processed and how many remain.
The VBA code itself is pretty rough - I threw it together mostly for my own use so it's not exactly the cleanest source out there. There isn't any error handling to speak of, and I didn't really do any special character escaping so you'll need to verify that everything replaces the way you expect. Any limitations of the stock vba 'Replace' function will be present as well. I haven't used it in a while, but I seem to remember that there are a few objects that need to be released if you want to support multiple runs.
That being said, it's worked fine for me on a number of occasions and has certainly saved a lot of time.
The version I am attaching will work with RSLogix500. You can easily convert this to work with RSLogix5 as well. I've always used the Pro version, however, I think you can run premade macros in the Standard versions as well.
-Trevor