返回范围内所有单元格地址的列表

冷冻的5032

我在列表(例如)中有一个范围列表(通过openpyxl从Excel工作簿加载rng_list = ['$A$1:$A$3', '$B$1:$B$3', '$C$1:$C$3']),我想将这些范围中的每一个“解包”到列表列表(即unpacked_list = [['$A$1','$A$2','$A$3'], ['$B$1','$B$2','$B$3'], ['$C$1','$C$2','$C$3']])中的单独列表中

请参阅下面的代码,了解到目前为止我在Jupyter Notebook中尝试过的内容。关于我为什么会收到以下错误的任何想法?或者,如果您对我可能想从另一个角度解决这个问题有任何想法,将不胜感激!谢谢!

    import os
    from openpyxl import Workbook
    from openpyxl.utils import get_column_letter

    # create temp worksheet
    wb_A = Workbook() 
    sheet_A = wb_A.create_sheet('sheetA')

    # list with Excel ranges as str items in list
    rng_list = ['$A$1:$B$10', '$C$1:$D$10', '$E$1:$F$10']
    temp_list = []
    unpacked_list = []


    for item in rng_list:
        for row in sheet_A(item): # use range from item in rng_list to iterate 
                                    through range in temp worksheet
            for cell in row:
                x = cell.row
                y = cell.column
                addr = get_column_letter(y) + str(x)
                temp_list.append(addr)
            unpacked_list.append(addr)

    # delete temp worksheet
    wb_A.remove(sheet_A)

    unpacked_list

我希望使用列表中的范围str来迭代创建的“虚拟工作表”,该工作表仅用于遍历单元格范围并捕获该范围内的相应单元格地址。我收到以下错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-85-13b28d369550> in <module>
     14 
     15 for item in rng_list:
---> 16     for row in sheet_A(item): # use range from item in rng_list to iterate through range in temp worksheet
     17         for cell in row:
     18             x = cell.row

TypeError: 'Worksheet' object is not callable
拉哈斯娅·普拉巴卡(Rahasya Prabhakar)

句法!要访问需要使用方括号的单元格,请在函数调用中使用括号

它应该是sheet_A [item]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

VBA-在单元格范围内搜索日期,返回单元格地址

查找范围内顶部单元格的所有出现次数和返回值

Excel中的数据验证-单元格范围内以逗号分隔的列表中的所有值

如果一个范围内的所有单元格都相同,不包括空白单元格

如何遍历Aspose.Cells for .Net中指定范围内的所有单元格?

在Excel中计算范围内的所有单元格

使范围内的所有单元格值均为负

如果仅填充范围内的所有单元格,请停止执行直到循环

仅当h列中的单元格颜色为红色时,如何使列表框填充范围内的所有行

如何在excel中获取所选范围内每个单元格的地址

在Excel中如何检查范围内的所有单元格仅包含特定字符串

如果 A1 中的查询 = #REF! , 清除 A2:B+lastrow 范围内的所有单元格

VBA在继续下一步之前检查范围内的所有单元格是否为空

Excel公式搜索范围内的所有单元格是否都读为“ True”,如果不是,则显示“ False”

对于具有另一个范围内的单元格范围的循环

如果单元格包含值范围内的文本,则返回找到的文本的相邻值

Excel公式返回范围内的最早日期并忽略空白单元格

在范围内查找值并返回第一行单元格

如果单元格值在两个日期范围内,如何返回它?

如果范围内的单元格为空,则VBA返回消息

仅在返回日期时才对包含公式的范围内的单元格进行计数?

如果返回空白或“”,VBA 会擦除某些单元格范围内的公式吗?

VBA 粘贴到具有锁定单元格的范围内,但跳过锁定的单元格

使用VBA查找/替换选定范围内具有零值的单元格(公式单元格)

在范围内的值上生成组合框列表,跳过空单元格

查找范围内的空单元格,然后返回与空单元格在同一行中的另一个单元格的内容

Excel VBA根据对应范围的最小值到最大值查找范围内的单元格地址

如何使用应用程序脚本获取某个范围内所有单元格的背景色并将背景设置为相同大小的其他范围?

遍历范围内的每个单元格