use*_*231 7 python excel hyperlink openpyxl
我正在使用模块openpyxl for Python,我正在尝试创建一个超链接,将我带到同一个Excel工作簿中的不同选项卡.执行类似于以下操作的操作会创建超链接; 但是,当我点击它时,它告诉我它无法打开文件.
from openpyxl import Workbook
wb = Workbook()
first_sheet = wb.create_sheet(title='first')
second_sheet = wb.create_sheet(title='second')
first_sheet['A1'] = "hello"
second_sheet['B2'] = "goodbye"
link_from = first_sheet['A1']
link_to = second_sheet['B2'].value
link_from.hyperlink = link_to
wb.save("C:/somepath/workbook.xlsx")
Run Code Online (Sandbox Code Playgroud)
我假设问题在于'link_to'的价值; 但是,我不知道需要改变什么或者我必须编写什么样的路径.
我正在使用Python 2.7.6和Excel 2013.
lom*_*san 11
我找到了办法.
假设一个名为' workbookEx.xlsx '的.xlsx文件有两个名为' sheet1 '和' sheet2 '的表,需要从' sheet1 '的一个单元格(A1)到' sheet2 '的另一个单元格(E5)的链接:
from openpyxl import load_workbook
wb = load_workbook(workbookEx.xlsx)
ws = wb.get_sheet_by_name("sheet1")
link = "workbookEx.xlsx#sheet2!E5"
ws.cell(row=1, column=1).hyperlink = (link)
Run Code Online (Sandbox Code Playgroud)
秘密是"#",Excel没有显示你,但它使用'#'作为相同的文件链接,我只需要将在Excel中创建的相同文件链接复制到Word文档中以查看'#'.
也可以省略文件名,即链接一张活动文档只需使用:_cell.hyperlink = '#sheetName!A1'.
要命名刚刚创建的链接,只需将单元格值设置为所需的字符串:_cell.value = 'Linkname'.
| 归档时间: |
|
| 查看次数: |
8509 次 |
| 最近记录: |