Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python xlsxwriter工作表。写入\u空白应用于范围_Python_Excel_Format_Xlsxwriter - Fatal编程技术网

Python xlsxwriter工作表。写入\u空白应用于范围

Python xlsxwriter工作表。写入\u空白应用于范围,python,excel,format,xlsxwriter,Python,Excel,Format,Xlsxwriter,我正在尝试使用xlsxwriter向一系列单元格写入格式 worksheet.write_blank('A4:B4',None,cell_formatwhite) 这种write_blank方法似乎只适用于单单元格引用,因为它的格式是“A4”,而不是“B4”。是否有一种方法可以将此格式应用于一系列单元格,而无需向单元格写入值?我想更改设置excel范围内所有单元格的颜色。尝试此功能: import string # function to write blank format to rang

我正在尝试使用xlsxwriter向一系列单元格写入格式

worksheet.write_blank('A4:B4',None,cell_formatwhite)
这种write_blank方法似乎只适用于单单元格引用,因为它的格式是“A4”,而不是“B4”。是否有一种方法可以将此格式应用于一系列单元格,而无需向单元格写入值?我想更改设置excel范围内所有单元格的颜色。

尝试此功能:

import string

# function to write blank format to range of cells
def range_write_blank(worksheet, col_start, col_end, row_start, row_end, cel_format):
    '''
    Writes blank to range of cells cel_format
    Takes:
    worksheet as Worksheet object
    col_start as uppercase letter string
    col_end as uppercase letter string
    row_start as int
    row_end as int
    cel_format as XlsXWriter Format object
    '''
    letters = list(string.ascii_uppercase)
    for r in range(row_start, row_end):
        for c in range(letters.index(col_start), letters.index(col_end)+1):
            worksheet.write_blank(r, c, '', cel_format)

# usage example
some_format = workbook.add_format({
    'bold': 1,
    'border': 1,
    'align': 'center',
    'valign': 'vcenter',
    'fg_color': 'blue'})

range_write_blank(worksheet, "A", "C", 0, 10, some_format)

你不能把这个方法放在一个循环中,在你想要的范围内写每个单元格吗?考虑到这是一个解决方案,但希望在写之前有一个更干净的方法。有很多可能,可以使用
工作表。write_row()
类似
单元格格式。设置字体颜色(“白色”);工作表。写入行('A4:B4',''*2,单元格格式)
?当然,根据您想要格式化的单元格组件调整格式。这将很好地工作,谢谢!