Python 如何将本地图片的超链接写入openpyxl中的单元格?

Python 如何将本地图片的超链接写入openpyxl中的单元格?,python,excel,hyperlink,openpyxl,Python,Excel,Hyperlink,Openpyxl,我使用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://pythonhoste

我使用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个问题:

  • 如何编写类似VBA样式函数的超链接:
    ActiveCell.FormulaR1C1=_
    “=超链接(”http://stackoverflow.com/questions/ask“,”站点“)”
    带着hyherlink和她的名字
  • 如何将超链接写入本地图像?
    ws.cell('B2').hyperlink=('1.png')#它不工作!我现在不知道该怎么办)
    请帮帮我)
  • 我们可以使用unicode超链接来创建图像吗?例如,当我使用
    ws.cell('B1').hyperlink=
    (u'http://pythonhosted.org/openpyxl/api.html)它失败了!
    例如,我们有“俄语语言名称.png”图片,我们
    在exel中创建超链接没有任何问题。我们点击单元格,
    然后打印
    '=超链接(“http://stackoverflow.com/questions/ask“;“俄语网站”)
  • 保存文档,解压他。然后我们转到他的目录到xl->worksheets->sheet1.xml 我们看到了标题

    然后

    row r=“2”x14ac:dyDescent=“0.25”span=“2:6”>-超链接(“http://stackoverflow.com/questions/ask“,“俄语网站”)俄语网站


    everything ok=)Exel支持unicode,但是python的库openpyxl呢?它支持超链接中的unicode?

    因为
    .xlsx
    文件中的文件是采用
    UTF-8
    编码的XML文件,unicode超链接不是问题。

    因为
    .xlsx
    文件中的文件是采用
    UTF-8
    编码的XML文件,unicode超链接不是问题。

    关于问题2,我认为,您需要包含文件链接的完整路径。
    如果无法访问Excel文件中的文件链接,则Excel的安全策略禁止此类操作

    关于问题2,我认为您需要包括文件链接的完整路径。
    如果无法访问Excel文件中的文件链接,则Excel的安全策略禁止此类操作

    我回答了一个类似的问题。希望这有帮助

    嗯,我可以做到这一点。虽然没有直接的方法来建立超链接,但在您的情况下,我们可以这样做。我能够使用下面的代码构建到现有文件的超链接

    wb=openpyxl.Workbook()
    s=wb。通过名称(“工作表”)获取工作表
    s['B4'].value='=超链接(“C:\\Users\\Manoj.Waghmare\\Desktop\\script.txt”,“newfile”)'
    s['B4'].style='Hyperlink'
    wb.save('trial.xlsx')
    

    将样式属性称为“超链接”是关键。我拥有的所有其他代码对您来说可能都不太重要。style属性会有一个“Normal”的值奇怪的是,即使没有style属性,我们正在工作的超链接也没有样式!当然虽然很奇怪,但我见过一些奇怪的东西。希望这有帮助。

    我回答了一个类似的问题。希望这有帮助

    嗯,我可以做到这一点。虽然没有直接的方法来建立超链接,但在您的情况下,我们可以这样做。我能够使用下面的代码构建到现有文件的超链接

    wb=openpyxl.Workbook()
    s=wb。通过名称(“工作表”)获取工作表
    s['B4'].value='=超链接(“C:\\Users\\Manoj.Waghmare\\Desktop\\script.txt”,“newfile”)'
    s['B4'].style='Hyperlink'
    wb.save('trial.xlsx')
    
    将样式属性称为“超链接”是关键。我拥有的所有其他代码对您来说可能都不太重要。style属性会有一个“Normal”的值奇怪的是,即使没有style属性,我们正在工作的超链接也没有样式!当然虽然很奇怪,但我见过一些奇怪的东西。希望这有帮助