2017-01-28 11 views
0

以下のコードはハイパーリンクを作成しますが、そのハイパーリンクをクリックするたびに「指定ファイルを開くことができません」と表示されます。すべてが同じブック内にあるシート間のハイパーリンクを作成

from openpyxl import load_workbook 
s1 = "C:/santosh_chikne/python/Excel/test1.xlsx" 

wb = load_workbook(s1) 

ws = wb.get_sheet_by_name("Index") 

a="A" 

b="B" 

rownums=4 

col=2 

sheetname=wb.get_sheet_names() 

for i in sheetname: 

    link = str(s1)+"#"+str(i)+"A1" 

    url2 = str(i) 

    ws.cell(row=rownums, column=col).hyperlink=link 

    rownums=rownums+1 

wb.save(s1) 

答えて

1

私はオフィスマシンにPythonをインストールしていないため、これはテストできませんが、このようなことはあなたの仕事をするはずです。

import xlsxwriter 

# Create a new workbook and add a worksheet 
workbook = xlsxwriter.Workbook('hyperlink.xlsx') 
worksheet = workbook.add_worksheet('Hyperlinks') 

# Format the first column 
worksheet.set_column('A:A', 30) 

# Add the standard url link format. 
url_format = workbook.add_format({ 
    'font_color': 'blue', 
    'underline': 1 
}) 

# Add a sample alternative link format. 
red_format = workbook.add_format({ 
    'font_color': 'red', 
    'bold':  1, 
    'underline': 1, 
    'font_size': 12, 
}) 

# Add an alternate description string to the URL. 
string = 'Python home' 

# Add a "tool tip" to the URL. 
tip = 'Get the latest Python news here.' 

# Write some hyperlinks 
worksheet.write_url('A1', 'http://www.python.org/') # Implicit format. 
worksheet.write_url('A3', 'http://www.python.org/', url_format, string) 
worksheet.write_url('A5', 'http://www.python.org/', url_format, string, tip) 
worksheet.write_url('A7', 'http://www.python.org/', red_format) 
worksheet.write_url('A9', 'mailto:[email protected]', url_format, 'Mail me') 

# Write a URL that isn't a hyperlink 
worksheet.write_string('A11', 'http://www.python.org/') 

workbook.close() 

またはこれです。

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) 
関連する問題