使用python 通过WIN32 读取VISIO 的shpae参数,可以写入数字,但是不能写入字符串,不知道什么问题
import win32com.client as win32
appVisio = win32.Dispatch("Visio.Application")
appVisio.Visible = 0
#打开图纸
dwg = appVisio.Documents.Open("D:\Project\System Diagram\系统图.vsdx")
#print(dwg.FullName)
#print(dwg.Pages.Item(1).Name)
#对于形状数据进行轮询,找到需要的形状
for shp in shps:
a = str(shp.MasterShape)
#通过MasterShape找到 需要的shape
if a == "HDMI Cable":
print(shp.Name)
shp.CellsU("Prop.HDMI.Value").Formula = "V-HDMI-"
###### 运行结果及报错内容
File "C:\Users\Bryan Liu\AppData\Roaming\Python\Python39\site-packages\win32com\client_init_.py", line 595, in setattr
self.oleobj.Invoke(*(args + (value,) + defArgs))
pywintypes.com_error: (-2147352567, '发生意外。', (0, '系统图.vsdx - Visio Professional', '\n\n#NAME?', None, 0, -2032466907), None)
但是当我就爱你过写入的数据改成数字,就可以写入,不知道问题出在哪里?
我希望可以通过python 修改 VISIO 图纸内的shpae的 shape data
"\"V-HDMI-\""
外面再套个双引号试试