如何更改excel vba中的行值和列值

时间:2015-06-02 17:02:01

标签: vba excel-vba excel

您好我是Excel VBA的新手

我想更改行和列值 我的数据与此类似 enter image description here

My age is   My height is    My weight is 
between 10-20   150 45
between 21-30   170 56
between 10-20   155 60
between 10-20   160 53
between 21-30   173 68

我想制作像这样的数据

enter image description here

Age Hght    Wght
Category A  150 45
Category B  170 56
Category A  155 60
Category A  160 53
Category B  173 68

即我改变了第一行

然后我改变了所有"在10-20和#34之间;到" A类" "在21-30和#34;之间到" B类"

我不想在代码中使用列号,而是更喜欢使用列名。

就是这样, 如果年龄="在10-20和#34之间;然后年龄=" A类"

我们怎么做?

1 个答案:

答案 0 :(得分:0)


首先,确保将数据放入表中。 (不要简单地输入excel的单元格中的数据)
你应该在INSERT功能区插入表格。
Table Name : Age Table

接下来,按照@Bryon的建议,创建另一个名为" DataTable"的表。如下图。您可以在其他工作表(例如MyData)上创建此表格Table Name : Data Table

最后,您创建另一个名为" MyResult"的表。在表格的第1行,根据列将公式放在单元格中:     = VLOOKUP(AgeTable [@ [我的年龄]],DataTable,2,TRUE) 第2栏
= VLOOKUP(AgeTable [@ [My Height is]],AgeTable [@ [My Height is]],1,TRUE) 第3栏
= VLOOKUP(AgeTable [@ [我的体重是]],AgeTable [@ [我的体重是]],1,TRUE)

以下是表格的输出:
Table Name : MyResult
每当表1的第2栏和第3列的值发生变化时,它将改变表3的第2列和第3列