Most Visio users should know that there is a built-in basic report writer. I use it often, but I do get frustrated sometimes. I wrote a chapter about it in my 2007 book (see https://bvisual.net/resources/visualizing-information-with-microsoft-visio/ ), where I explained how you can edit the XML of an external report to change the column headers, but this can be a bit of a pain if the report is embedded in you document. Therefore, I have written some VBA code to provide the ability to edit embedded report column headers.
For example, here is a standard report for equipment within a rack:
