我想使用python(如上所示)将文本文件嵌入到excel表中,这样当您单击该单元格时,该文件会自动打开。我不想将路径指定为 hyperlink.like "c:\My Documents\xyz.txt"。这样做的原因是我希望代码是可移植的,即其他人也应该能够在他们想要的任何文件夹中的计算机上运行该程序。在这种情况下,由于指定了路径名,代码将无法在其他计算机上运行。
import win32com.client as win32
xl = win32.Dispatch('Excel.Application')
xl.Visible = 1
wb = xl.Workbooks.Open("C:\Users\\automation\\abcdef.xlsx")
column = wb.ActiveSheet.Range("A2:A200")
Embedded_object = wb.ActiveSheet.OLEObjects()
i = 2
for cell in column:
hostname_cell = wb.ActiveSheet.Cells(i,1).Value
fi = 'C:\Users\\212632723\utomation\\geckodriver.txt'
if hostname_cell is None:
print fi
xl.ActiveSheet.OLEObjects().Add(Filename=fi, Link=False, DisplayAsIcon=True).Select
i += 1
Run Code Online (Sandbox Code Playgroud)
我已经使用上面的代码从Embedding text file into excel using Python 来完成我所需要的,但它抛出了一个错误
xl.ActiveSheet.OLEObjects().Add(Filename=fi, Link=False, DisplayAsIcon=True).Select File "", line 6, in Add com_error: (-2147352567, 'Exception发生', (0, u' Microsoft Excel', u'OLEObjects 类的添加方法失败', u'xlmain11.chm', 0, -2146827284), None)
编辑 …
python ×1