当前位置: 首页 > 知识库问答 >
问题:

Excel:当最后一列更改编号时,如何获取最后一列的列索引编号

夹谷星剑
2023-03-14

我正在尝试将我的VLOOKUP自动化为每周更新的数据表。目前我的VLOOKUP如下所示:

=VLOOKUP(A3,'[Report.xlsm]All'!$I:$OA,COLUMN('[Report.xlsm]All'!$NX:$NX)-8,0)

每周向表中插入两个新列(在最后一列之前)。新列中填充了新数据,我必须重新编写我的VLOOKUP。

我正在查找的列始终是倒数第三列、倒数第二列和倒数第三列。

有没有一种方法可以通过查找倒数第三、倒数第二和倒数第三列的函数来指定列索引号?我想这样我可以添加一个宏来完成这项工作。

共有3个答案

马业
2023-03-14

使用第1行中的文本列标题标签,

=VLOOKUP(A3, '[Report.xlsm]All'!$I:$zz, match("zzz", '[Report.xlsm]All'!$1:$1)-8, false)

对于第1行中的日期或数字,请使用1e99而不是“zzz”。

林雅畅
2023-03-14

数据转换为Excel表格,然后使用。范围柱。计数。您可以在选定范围内的单元格中使用Ctrl键转换为表格。确保提示包含所有必需的列。这是一种稳健的方法。

Option Explicit
Public Sub test()
    Dim totalColumns As Long
    With ThisWorkbook.Worksheets("All").ListObjects(1)     
        totalColumns = .Range.Columns.Count
        Debug.Print totalColumns                 '<==All columns
        If totalColumns < 4 Then Exit Sub
        Debug.Print totalColumns - 3             '<== etc
    End With
End Sub
符正信
2023-03-14

对于最后一列,您可以使用以下代码并将其递减3

Dim lastcolumn As Long
dim ws as worksheet

set ws = activesheet

lastcolumn = ws.UsedRange.Columns.Count

对于公式解决方案,如果数据集没有空标题,可以使用counta函数查找最后一列。

如果您发现任何问题,我们可以稍后修改代码

 类似资料:
  • rank ▲ ✰ vote url 61 374 45 700 url 获取列表最后一个元素 在Python里,如何获取一个列表的最后一个元素? some_list[-1]最短最Pythonic的方法. 事实上你可以用这个语法做好多事.some_list[-n]语法获取倒数第n个元素.所以some_list[-1]获取最后一个元素,some_list[-2]获取倒数第二个,等等.最后some_li

  • 问题内容: 我需要列表的最后9个数字,而且我敢肯定有一种切片方法,但是我似乎无法理解。我可以这样获得前9个: 问题答案: 您可以在切片运算符中使用负整数。这是使用python CLI解释器的示例: 重要的是

  • 问题内容: 在Python中,如何获取列表的最后一个元素? 问题答案: 是最短和最的。 实际上,你可以使用此语法做更多的事情。该语法获取第n到最后一个元素。因此获取最后一个元素,获取倒数第二个,依此类推,一直向下到,这将为你提供第一个元素。 你也可以通过这种方式设置列表元素。例如: 请注意,如果期望的项目不存在,则按索引获取列表项将引发。这意味着如果为空将引发异常,因为空列表不能有最后一个元素。

  • 问题内容: 我正在尝试从DbgView日志文件中删除前两列(我对此不感兴趣)。我似乎找不到从第3列开始直到行尾打印的示例。请注意,每行都有可变的列数。 问题答案: …或更简单的解决方案: 只需添加正确的定界符(-d),您将获得相同的效果。

  • 问题内容: 对于此函数,运行后,输出将为2,5,7 .... 9,我的问题是如何删除最后一个逗号? 问题答案: 我会在一开始打印逗号,像这样-

  • 问题内容: 我已经做了一些寻找该问题答案的搜索,但是我能弄清楚的是: 在我看来,这似乎很古怪,又不合蟒蛇风(而且很慢?)。 在不指定列名的情况下,为pandas数据框中的最后一列选择数据的最简单方法是什么? 问题答案: 使用iloc并针对最后一列()选择所有行():