Changing scale bar properties with arcpy

Discussion created by sbyrne on Sep 16, 2010
Latest reply on Jul 1, 2019 by curtvprice
I'm trying to alter the number of divisions in a scale bar using Python.  I can do it in VBA so it should be possible in Python, right?

An example of why I might want to do this is if I have a set of data-driven pages and the map extent for the set is determined by a data-driven scale, so the scale will be different for each page.

I know I can just set the scale bar to adjust the division value rather than the width, but ArcMap then chooses very awkward division values that are of no help to my field crew who are standing in the middle of nowhere with a ruler trying to figure out how far 50 feet is on the map they're holding.  The scales vary too wildly for me to adjust the scale by number of divisions either.  I've checked.

So, my office previously had a VBA script that would look at the scale of a map and adjust the scale bar divisions and division numbers based on a list of predetermined scale ranges.  Like a good ArcGIS 10 user, I'm trying to recreate this in Python.  I understand how to get to the scale bar as a MapsurroundElement to adjust its width or move it around on the page, but is there a way to get to the division values?