Introducing AnonymizeReviewer: Remove Author Metadata from Word Docs Without Losing Edits
When youโre collaborating on a Microsoft Word document, tracked changes and comments are essential tools. However, when it's time to share those files outside your team, another concern often arises: the names behind every comment and edit are embedded directly within the document.
There are times when anonymity is important. Whether youโre simplifying client reviews, preparing materials for a broader audience, or just removing unnecessary distractions, Word doesn't make it easy to cleanly strip names without accepting all changes or removing valuable context.
To solve that problem, I created AnonymizeReviewer, a lightweight Python script that lets you anonymize Word files while preserving everything that matters.
Microsoft Word includes a feature called โRemove personal information on save.โ While helpful in theory, it behaves inconsistently depending on your version and settings. It also doesnโt catch all the places author names can appear.
Here are some of the areas where Word stores author names:
Manually scrubbing each of these is time-consuming and prone to error. Itโs easy to miss something. Thatโs why I built a more dependable solution.
AnonymizeReviewer reads the .docx file as a zip archive, scans its internal XML files, and replaces all instances of the original author name with a placeholder or alternate name of your choosing. It does this without altering the tracked changes or comments themselves.
Key features include:
First, clone the repository and install the Python dependency:
To run in interactive mode with file picker prompts:
To run with arguments:
To batch-process all .docx files in a folder:
Files that already end in โ - Anonymized.docxโ will be skipped automatically to avoid duplication.
This tool originated from a real-world use case. I needed a way to hand off tracked-change documents for client review without exposing internal names. Word did not provide a clean solution, and most online options were either unreliable or required uploading sensitive files.
By targeting the actual structure of a .docx file and addressing all areas where names can be stored, AnonymizeReviewer fills that gap, giving you control over what you share.
The project is available on GitHub at https://github.com/gregvarghese/AnonymizeReviewer
Pull requests and feedback are welcome. If you have ideas for additional features, such as redacting specific comment content or cleaning embedded metadata beyond names, I would love to hear them.
This project is licensed under the MIT License.
The software is provided as is, without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement.
How to Generate a Page for Each Day of Month in Microsoft Word using VBA
I briefly joined my wife at her practice to help her grow the business and figure out how to make things more efficient. One of the things I learned is that my wife created a sign-in sheet for the office in Microsoft Word. Every week she would open the file and manually enter the date for each day of the week and then print out the documents. I took over the responsibility for a month and it annoyed me due to how inefficient the process was and I decided to automate the entire thing. I couldn't find a solution to the problem online so I had to roll my own and am sharing the code in case someone else can benefit from it.
The script will calculate the first day and last day of the month and then do a loop to append the date in the "Day, Month day, Year" format (i.e. Thursday July 17, 2019) to a text field.
There are a few important steps involved to get the script working as is:
Open up Word, then open up VBA, and copy and paste this snippet into a module. When you run the function, it'll create a copy for every day of the month. I also created a function to start at a specific date in case you run it in the middle of the month.