As you don't know ArcObjects yet know Python, you can run this code to invoke ArcObjects from Python.
You would need to prepare the installation in order to be able to run this code. Refer to this blog post for detailed instructions. On GIS.SE, there are some great posts that helped me a lot to get started:
The code to run to update a single
.mxd is below. You can use Python
for loop to iterate over multiple
.mxd files, wrapping the code below into a function first.
from comtypes.client import GetModule, CreateObject
from snippets102 import GetStandaloneModules, InitStandalone
esriCarto = GetModule(r"C:\Program Files (x86)\ArcGIS\Desktop10.4\com\esriCarto.olb")
# Running this code for the first time, you would need to import
#the “StandaloneModules”. Can comment out later.
#creating a map document object
mxdObject = CreateObject(esriCarto.MapDocument, interface=esriCarto.IMapDocument)
#accessing the map
IMap = mxdObject.ActiveView.FocusMap
#counting number of elements in the layout (i.e., map surrounds as Esri call those)
for i in xrange(0,IMap.MapSurroundCount):
#Alternating Scale Bar
#I know I need the element with certain name
scale_bar = [IMap.MapSurround(i) for i in xrange(0,IMap.MapSurroundCount)
if IMap.MapSurround(i).name == 'Alternating Scale Bar']
#accessing the properties if ScaleBar object - all the properties inside
#Alternating Scale Bar Properties window
IScaleBar = scale_bar.QueryInterface(esriCarto.IScaleBar)
#we want to change it to Meters
IScaleBar.UnitLabel = 'Meters'
#either save the same mxd, overwriting existing one; you cannot have it open in ArcMap
#or perhaps better to create copies
If you have troubles setting up comtypes and running Python accessing ArcObjects, do post a new question - there are some people here have done it and can help!