问答详情
源自:-

python如何实现excel按颜色筛选功能

老师好,抱歉在没有学完课程的时候问您这个问题,因为自己搜不到相关的信息,还想请老师解答下。谢谢您。具体的要求是计算excel某一列去除掉黄色单元格后的列和。

提问者:慕田峪8406624 2020-07-09 09:08

个回答

  • 离岛
    2020-07-09 09:37:40
    已采纳

    不太了解具体需求,提供一些示例代码和思路供你参考:

    整体思路:首先已知excel中的颜色值,根据编码实现颜色筛选的功能

    示例:

    1、首先安装pip install openpyxl

    2、示例代码可以获取Excel中指定背景填充色或文字颜色的数据(具体颜色值网上有很多在线rgb颜色转换的)

    import openpyxl

    filename = "colortest.xlsx"  # 读取excel

    workbook = openpyxl.load_workbook(filename)

    worksheet = workbook.get_sheet_by_name("Sheet1")  # 读取Sheet

    rows, cols = worksheet.max_row, worksheet.max_column

    reddata = []

    yellowdata = []

    for i in range(1, rows):

        for j in range(1, cols):

            ce = worksheet.cell(row=i, column=j)

            fill = ce.fill

            font = ce.font

            # print(fill.start_color.rgb)

            if fill.start_color.rgb == "FFEEFA50":

                yellowdata.append(ce.value)

            if fill.start_color.rgb == "FFFF1D1D":

                reddata.append(ce.value)

            # if font.color.rgb == "FFFF1D1D":

            #     reddata.append(ce.value)

    print(yellowdata, reddata)