如何为需要更改列的子例程创建语句?

时间:2017-04-27 11:31:40

标签: excel vba excel-vba

我想创建一个声明,我们可以为列传递变量,因为它们会因为导入不同的工作表而永远在变化,因为数据保持不变,但列可能不同。

所以我有声明:

="do.something("&BA2&",'"&LEFT(BI2,FIND("_",BI2)-1)&",DA_IV_ID) as "&BA2&","

BA1 ="姓名"列,和BI1 ="地址"柱。现在这些列的数据和名称将保持不变,但将来我会收到额外的电子表格,其中这些列,即BA1将不会与"名称"和"名称&#34对齐;例如,可以成为列C1。因此BA2将选择" Name"。

的第一个数据项

我可能需要能够在以后的电子表格中的任何位置插入此语句。这就是为什么我要为它创建一个特定的子程序。

我需要通过搜索列标题(例如String)并将这些列的值(例如A,C,AA等)传递到上面的语句中来识别这些列的位置。

我正在考虑这样的事情以确定列:

column_Name = WorksheetFunction.Match("Name", Sheets("Sheet1").Range("1:1"), 0)
column_Address = WorksheetFunction.Match("Address", Sheets("Sheet1").Range("1:1"), 0)

然后以某种方式修改我们的声明以包含这些变量?

="do.something("&[column_Name]2&",'"&LEFT([column_Address]2,FIND("_",[column_Address]2)-1)&",DA_IV_ID) as "&[column_Name]2&","

在我的子例程中,我是否需要将该语句存储为String?它甚至会被接受为String数据类型吗?

1 个答案:

答案 0 :(得分:0)

我建议你定义你想要做什么,而不是说你想做什么?我相信这有助于人们更好地帮助您解决问题。通常有几种方法可以解决给定的问题。

(对不起,评论的声誉不够)