【问题标题】:VBA/Excel: Get cell from different sheetVBA/Excel:从不同的工作表中获取单元格
【发布时间】:2014-10-22 20:28:42
【问题描述】:

长话短说:我在 Excel 中有两张工作表:Sheet1 有两个单元格(A1 和 A2)和 Sheet2(提供一些数据),如下所示:

  | A | B  |
--|---|----|
1 | a | 5  |
2 | b | 10 |
3 | c | 15 |
4 | ...

所以这是我的问题:在 Sheet1 中,当我在 A1 中输入“b”时,它应该自动在 A2 中输入 10。

有点像一个简单的查找操作,它将返回单元格(或列)编号,并使用它来返回它旁边的单元格的值。但是我该怎么做呢?

提前致谢!

【问题讨论】:

    标签: excel vba find cell


    【解决方案1】:

    如前所述,VLOOKUP 是最简单和最快的方法,但我假设您不希望在该单元格或整个 Sheet1 中有一个公式?这是一种在 VBA 中执行相同操作同时仍使用 VLOOKUP 的简单方法 - 只是不在 Sheet1 上:

    使用 Sheet2!Z1 进行计算,如果您的工作簿中使用了该单元格,则只需使用隐藏区域中的任何其他未使用的单元格即可。 Sheet2!Z1 中的公式:

    =VLOOKUP(Sheet1!$A$1,Sheet2!$A$B,2,FALSE)
    

    用于填充 Sheet1!A2 的简单 VBA:

    sum DoIt
      Worksheets("Sheet1").Range("A2").Value = Worksheets("Sheet2").Range("Z1").Value
      end sub
    

    例如,您可以使用按钮调用 DoIt 子程序,它将使您的 Sheet1/单元格 A2 中没有公式。

    【讨论】:

    • 谢谢,这正是我正在寻找的(只是注意到我在我的问题中混淆了行号,现在已修复)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-27
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    相关资源
    最近更新 更多