[英]insert partial colored text and a hyperlink behind it into a excel cell
这是一个使用 XlsxWriter 的示例,您在其中编写 url,然后使用包含多种格式的丰富字符串覆盖单元格文本:
import xlsxwriter
workbook = xlsxwriter.Workbook('rich_string_url.xlsx')
worksheet = workbook.add_worksheet()
# Adjust the column width for clarity
worksheet.set_column('A:A', 20)
# Add the required url.
worksheet.write_url('A1', 'http://www.bing.com')
# Add for formats for the rich string.
red = workbook.add_format({'color': 'red', 'underline': 1})
url_format = workbook.get_default_url_format()
# Overwrite the text for the url with a rich string.
worksheet.write_rich_string('A1',
'elon musk ',
red, 'starlink',
url_format)
workbook.close()
Output :
请参阅write_url()和write_rich_string()上的 XlsxWriter 文档。
openpyxl
做不到。(部分着色)。通过测试, openpyxl
似乎无法获得第二部分的颜色。
这是example.xlsx
:
如果您通过openpyxl
阅读它,例如:
import openpyxl
from openpyxl.styles import Font, Color
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.active
print(sheet.cell(row=1, column=1).font.color)
结果:
<openpyxl.styles.colors.Color object>
Parameters:
rgb='FFFFFF00', indexed=None, auto=None, theme=None, tint=0.0, type='rgb'
字体中没有第二种颜色。
另外,我尝试将此单元格的style
复制到一个新文件中,例如:
import openpyxl, copy
from openpyxl.styles import Font, Color
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.active
sheet.cell(row=1, column=2, value="elon musk starlink").font = copy.copy(sheet.cell(row=1, column=1).font)
wb.save('output.xlsx')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.