我使用的是Python 2.7.3 我需要通过openpyxl库将本地图片的超链接写入单元格。
当我需要添加到网站的超链接时,我写了这样的内容:
来自openpyxl导入工作簿
wb = Workbook()
dest_filename = r'empty_book.xlsx'
ws = wb.worksheets[0]
ws.title = 'Name'
hyperlink to local picture
ws.cell('B1').hyperlink = ('http://pythonhosted.org/openpyxl/api.html')
hyperlink to local picture
ws.cell('B2').hyperlink = ('1.png') # It doesn't work!
wb.save(filename = dest_filename)
我有3个问题:
ActiveCell.FormulaR1C1 = _
"=HYPERLINK(""http://stackoverflow.com/questions/ask"",""site"")"
与hyherlink和她的名字ws.cell('B2').hyperlink = ('1.png') # It doesn't work! And I don't now what to do )
Plese, help me )
ws.cell('B1').hyperlink =
(u'http://pythonhosted.org/openpyxl/api.html') It fail with error!
for example we have picture 'russian_language_name.png' and we
create hyperlink in exel without any problem. We click to the cell,
and then print
'=Hyperlink("http://stackoverflow.com/questions/ask";"site_by_russian_language")
保存文件,解压缩他。然后我们转到他的目录xl-> worksheets-> sheet1.xml 我们看到标题
<?xml version="1.0" encoding="UTF-8" standalone="true"?>
然后......
row r="2" x14ac:dyDescent="0.25" spans="2:6">-<c r="B2" t="str" s="1"><f>HYPERLINK("http://stackoverflow.com/questions/ask","site_by_russian_language")</f><v>site_by_russian_language</v></c>
一切正常=)Exel支持unicode,但是python的库openpyxl怎么样?它支持超链接中的unicode? p>
答案 0 :(得分:0)
由于.xlsx
文件中的文件是带有UTF-8
编码的XML文件,因此Unicode超链接不是问题。
答案 1 :(得分:0)
关于问题2,我认为您需要包含文件链接的完整路径。 如果您无法访问Excel文件中的文件链接,则禁止此类操作的是Excel的安全策略。
答案 2 :(得分:-1)
wb=openpyxl.Workbook()
s = wb.get_sheet_by_name('Sheet')
s['B4'].value = '=HYPERLINK("C:\\Users\\Manoj.Waghmare\\Desktop\\script.txt", "newfile")'
s['B4'].style = 'Hyperlink'
wb.save('trial.xlsx')
通过将style属性称为“Hyperlink”是关键。我拥有的所有其他代码对您来说可能并不重要。否则,样式属性将具有'正常'的值奇怪的事情即使没有样式属性,我们工作的超链接,但只是它缺乏风格!当然。虽然很奇怪,但我看到了一些陌生的东西。希望这会有所帮助。