向 Excel 单元格中写入链接

如题,向 Excel 单元格中写入链接,包括:“网址”,“邮箱”,“本地文件路径”

  1. 使用库:xlsxwriter

  2. 代码如下:

    import xlsxwriter
    
    # 创建一个新工作簿并添加一个工作表。
    workbook = xlsxwriter.Workbook(r'\\Mac\Home\Desktop\test33.xlsx')
    worksheet = workbook.add_worksheet('test')
    #
    # # 为B列设置格式
    worksheet.set_column('B:B', 40)
    # 设置样式
    red_format = workbook.add_format({
    	'font_color': 'red',
    	'bold': 1,
    	'underline': 1,
    	'font_size': 12,
    })
    # 写入一些超链接
    worksheet.write_url('B1', 'http://support.i-search.com.cn/')  # 隐式格式
    worksheet.write_url('B3', 'http://support.i-search.com.cn/', string='艺赛旗社区')
    worksheet.write_url('B5', 'http://support.i-search.com.cn/', tip='Click here')
    worksheet.write_url('B7', 'http://support.i-search.com.cn/', red_format)
    worksheet.write_url('B9', 'mailto:wulei@i-search.com.cn', string='Mail me')
    worksheet.write_url('B11', 'C:/file/test/test1/201906/final_file')
    # 写入一个非超链接的URL
    worksheet.write_string('B13', 'http://support.i-search.com.cn/')
    workbook.close()
    
  3. 执行结果如下图:

    向 Excel 单元格中写入链接

  4. 解释说明:

     a.可以看到,前4个,代码中填写都是同一个URL,但他们显示出来的却是不一样的。其中序号为2的,代码中用了
     string,后面的值会代替前面的URL出现在Excel文本中,但是点击Excel该单元格,效果也是一样的;
    
     b.序号为6的,是链接到本地文件。点击的效果是打开该路径下的文件;
    
     c.序号为4的,可以看到的是他的字体大小及颜色和其他的是不一样的。原因是给他添加了一个样式,且该样式在前面是
     定义过得。