如果/和声明并在Excel中查找

我的问题是关于VBA的Excel代码。

我想也许写一个macros,但我不是很熟悉编码,所以我正在寻找一些指导。

基本上我有一个excel电子表格与一些表格,但没有填写任何值,然后我有一个单独的表格,我想进入第一个电子表格

例如,这将是我有什么简短的细分:

高度: * 空白单元格填充 *

长度: * 要填充的空白单元格 *

宽度: * 要填充的空白单元格 *

我想设置一个macros,当我在第一行input10(注意,有两列,一个是名字,例如“高度”,一个是实际值),它会查找我的第二个工作表与值的表格,并根据计算表中的相邻值自动填充字段的长度和宽度。

我希望这是有道理的!

我试着创build一个新的macros,写一个基本的if /和函数,但macros不会运行。 我已经启用macros的,但它告诉我,我的代码没有定义的对象。 因为我无法运行,所以我没有太多的注意力来合并lookup命令。

我已经在网上做了一些基本的研究,如果/和声明,他们似乎并不难,但是我的值表有126个不同的行,每一个都有一个高度。 长度和宽度值,所以它将是3个水平列和126个垂直行。 对我来说,做这么多的事情似乎太过分了。

我也发现很难查找不同的工作表。 这张桌子非常大,我宁愿把它放在一张单独的纸上,而不是放在第一张纸的背面,然后在那里查看(这看起来很乱)

对不起如果我没有解释得很好。 任何帮助是极大的赞赏!

我build议你不要使用VBA。 您可以使用VLOOKUPfunction来实现这一点。

这里是我在Sheet2中的一些例子。

HLW 1 2 3 5 10 12 10 11 12 15 15 15 

为了方便起见,我定义了一个名称myHLW ,它定义为sheet2!$ a $ 1到sheet2!$ c $ 5。

在Sheet1中,我在a1,b1和c1中键入Height Width Length

我在a2中input10 。 然后我在b2中input这个公式: =VLOOKUP($A2,myHLW,2) 。 这告诉Excel(a)在a2(当前是10)中查找值。 (b)查看指定的地区myHLW。 (c)将第二列中的内容放在find的行中。 Excel为我填写11

然后在c2中input这个公式: =VLOOKUP($A2,myHLW,3) 。 这告诉Excel使用命名的区域myHLW在a2(当前为10)中查找值,并在find的行中放置第3列中的任何值。 Excel为我填充12

我复制了公式,进入了不同的高度。 它看起来像这样:

 Height Length Width 10 11 12 5 10 12 1 2 3 3.14159 2 3 

请注意,Sheet2中的高度必须按升序排列。 还要注意,对于未find的高度(3.14159),它使用1的高度(未超出的最大值)。

您也可以添加第四个参数,例如=VLOOKUP($A2,myHLW,3,FALSE) 。 如果第四个参数为false,则Excel将需要完全匹配。 如果你有这个VLOOKUP的话,如果没有匹配的话,Excel将放置#N #N/A