我的公式是:
="do.something("&BA2&",'"&LEFT(BI2,FIND("_",BI2)-1)&",something) as "&BA2&","
但是,如何使用每列中第一个单元格中存在的数据(即列标题)来创建此列,而不是指定列。
如此有效,我想要的是:
="do.something("@[Data_Header_1]2",'"&LEFT(@[Data_Header_2]2,FIND("_",@[Data_Header_2]2)-1)&",something) as "@[Data_Header_1]2","
但显然这是无效的。
我的数据可能会移动,因此我想使用列标题引用它。
提前致谢!
答案 0 :(得分:2)
如果列标题位于第1行,请使用“匹配”查找列:
column_number1 = WorksheetFunction.Match("Data_Header_1", Sheets("Sheet1").Range("1:1"), 0)
column_number2 = WorksheetFunction.Match("Data_Header_2", Sheets("Sheet1").Range("1:1"), 0)
要引用该列,只需使用Columns
,例如
Columns(column_number1).Select
或 - 取决于您将其用于:
Columns(column_number2).Address
答案 1 :(得分:0)
直接指向细胞。因此,如果表格在A1中开始并且您想要第一个标题,请将其称为A$1
。
$
用于修复行,所以即使你拖下公式,你仍然指的是第一行