python 如何在excel单元格中粘贴非字母数字字符串?

问题描述 投票:0回答:1

我想把下面的公式放在excel的一个单元格中(A18),这样它就会链接到一个文件,excel就会执行一些间接的vlookup函数等(这不是我这里问题的一部分)。

问题是我很难用python代码来粘贴它。它应该完全按照下面的格式粘贴,否则它不会为我工作。我怎样才能解决这个问题?

="'W:\XYZ\ABC\DEF\"

以下是我试过的方法,但对我不起作用

xlapp = win32com.client.DispatchEx("Excel.Application")
wb = xlapp.Workbooks.Open(filepath, None, False)
ws = wb.sheets['TT1']
ws.Range('A18').value = '=' + '"' + "'W:\\XYZ\\ABC\\DEF\\"

以下是我收到的错误信息

Traceback (most recent call last):
  File "C:/Users/ABC/PycharmProjects/PA/excel_copyTab.py", line 126, in <module>
    pastelink()
  File "C:/Users/ABC/PycharmProjects/PA/excel_copyTab.py", line 121, in pastelink
    ws.Range('A18').value = '=' + '"' + "'W:\\XYZ\\ABC\\DEF\\"
  File "C:\Users\ABC\Anaconda3\envs\PA36\lib\site-packages\win32com\client\dynamic.py", line 581, in __setattr__
    raise AttributeError("Property '%s.%s' can not be set." % (self._username_, attr))
AttributeError: Property 'Range.value' can not be set.
python win32com
1个回答
0
投票

试试这个:-

ws.Range('A18').value = '=' + '''"W:\XYZ\ABC\DEF\\"'''
FileName=ws.Range('A18').value+ws.Range('B10').value
print(FileName)
© www.soinside.com 2019 - 2024. All rights reserved.