如何使用python查找包含特定文本的单元格?

如何使用python查找包含特定文本的单元格?,python,openpyxl,Python,Openpyxl,我正在尝试迭代xlsx文件,并使用python查找包含我们公司名称的单元格。该文件由2张或多张表组成,每张表包含6个公司信息。我正在寻找的每个单元的结构如下所示: 单元格F6=1(A公司+B公司) 单元格G6=2(公司C+公司D) 单元H6=3(公司E+公司F) 等等 我想找到包含A公司的单元格。我已经做了一些编码,但遇到了一些问题 我可以做的编码如下: import openpyxl bid = openpyxl.load_workbook('C:/Users/User/Desktop/bid

我正在尝试迭代xlsx文件,并使用python查找包含我们公司名称的单元格。该文件由2张或多张表组成,每张表包含6个公司信息。我正在寻找的每个单元的结构如下所示:

单元格F6=1(A公司+B公司)

单元格G6=2(公司C+公司D)

单元H6=3(公司E+公司F) 等等

我想找到包含A公司的单元格。我已经做了一些编码,但遇到了一些问题

我可以做的编码如下:

import openpyxl
bid = openpyxl.load_workbook('C:/Users/User/Desktop/bidding.xlsx', data_only=True)

for sheet in bid.worksheets:
    for row in sheet.iter_rows():
        for entry in row:
            if entry.value == '1ST(Company_A+Company_B)':
                print(entry.offset(row=1).value)
                print(round(entry.offset(row=8).value/100,5))

我可以找到我想要的值,但我想在不输入所有内容的情况下找到单元格,因为您正在使用
=
脚本正在检查单元格中的字符串是否与该字符串完全匹配。而是在中使用

您的代码应该是:

import openpyxl
bid = openpyxl.load_workbook('C:/Users/User/Desktop/bidding.xlsx', data_only=True)

for sheet in bid.worksheets:
    for row in sheet.iter_rows():
        for entry in row:
            try:
                if 'Company_A' in entry.value:
                    print(entry.offset(row=1).value)
                    print(round(entry.offset(row=8).value/100,5))

             except (AttributeError, TypeError):
                 continue

我将“==”改为“in”,但我得到一个错误,即类型为“cell”的参数不可编辑。@PeterJung如果检查试图检查空单元格(无),则会发生错误。我添加了一个简单的尝试,除了,应该这样做,这是一个快速而肮脏的修复,但对于一件简单的事情,它应该可以工作。