我正在使用Excel的= HYPERLINK函数在XlsxWriter中编写超链接。我没有使用write_url()
,因为我的选项卡名称以数字开头,并且我还需要显示“友好”名称而不是超链接。 (显示友好名称似乎不适用于write_url()
的'internal:...'
关键字。)超链接工作正常,但是由于某些原因,即使我将'text_wrap'
设置为True
,Excel也没有包装超链接。 。如您在顶部图片中看到的,Excel显示设置了“环绕文字”(显示为灰色),但未包裹文字。如果单击“自动换行”以取消选择它,然后再次单击以重新选择它,则它确实将自动换行,如下面的图片所示。
我正在使用xlsxwriter 1.0.2和Excel 2016。
import xlsxwriter
wb = xlsxwriter.Workbook('Wrap.xlsx')
ws = wb.add_worksheet('Test1')
wrap = wb.add_format({'text_wrap': True})
ws.write('A1', '=HYPERLINK("#Sheet1!A1", "A really long name here that does not wrap")', wrap)
ws.write('B1', 'Bye')
wb.add_worksheet('Sheet1')
wb.close()
最佳答案
显示好记的名称似乎不适用于write_url()的'internal:...'关键字。
它确实:
import xlsxwriter
wb = xlsxwriter.Workbook('Wrap.xlsx')
ws = wb.add_worksheet('Test1')
wrap = wb.add_format({'text_wrap': True})
ws.write_url('A1', 'internal:Sheet1!A1', wrap,
"A really long name here that does not wrap")
ws.write('B1', 'Bye')
wb.add_worksheet('Sheet1')
wb.close()
输出:
关于python - 用= HYPERLINK和XlsxWriter包装文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51846413/