2

問題: Excel シートを作成するための簡単なコードを試しています。プログラムは、Excel シートが既に存在するかどうかを確認し、ファイルが存在する場合は、新しいデータを追加します。問題は、xlrd がハイパーリンクを読み取れないため、ハイパーリンクをコピーできないことです。誰かが私に何らかの方法を提案してくれたら、とても感謝しています。xlrd (0.9.2)、xlwt (0.7.5)、および xlutil1.6.0) を使用しています。

注:ここでは、ハイパーリンクのデフォルトの例をいくつか使用しました。この情報は、多くのシートと複数の場所にハイパーリンクを含むすべてのシートを含む Excel ワークブックを編集する他のプログラムに使用します。

コード:

from xlwt import *
import xlrd as xr
import os
from xlutils.copy import copy

name=r"hyperlinks.xls"
if os.path.exists(name)==True:
    print "Excel sheet already exists!!!"
    cwb=xr.open_workbook(name,formatting_info=True)
    w=copy(cwb)
    temp=cwb.sheet_by_index(0)
    ws=w.get_sheet(0)
    row=len(temp.col_values(0))
    n = "HYPERLINK"
    ws.write_merge(row+1, row+1,1, 10, Formula(n +'("C://abc.jpg";"pic")'))
    w.save("hyperlinks.xls")  
else:
    w = Workbook()
    ws = w.add_sheet('F')
    n = "HYPERLINK"
    ws.write_merge(row+1, row+1,1, 10, Formula(n +'("C://abc.jpg";"pic")'))
    w.save("hyperlinks.xls")

ご協力いただきありがとうございます!!!

4

0 に答える 0