我想在SHEET1里的C1单元格显示从SHEET2的A列里的数据表查找的100的数据的右边的值

Private Sub CommandButton1_Click()
With Sheet2.Columns("A:A")
Set c = .Find(100, LookIn:=xlValues)
Sheet1.Range("c1").Value = Cells(c.Row, 2)
End With
End Sub

请问有什么问题,请高手指教,谢谢!收起
zzp2018 | 浏览 22986 次
推荐于2016-09-09 09:19:06 最佳答案
 
  在Excel VBA中Find函数的基本用法。Find函数就是Excel表格中的查找功能,可以通过录制宏的方法来获得Find的代码。
  Sub Macro1()
  Cells.Find(What:="A", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
  xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
  , SearchFormat:=False).Activate
  Cells.FindNext(After:=ActiveCell).Activate
  End Sub
  从上面可以看到Find函数共有8个参数,分别对应Excel表格查找里面选项的各个项目,这里我就不多说了,感兴趣可以自己试下,其中只有一个参数是必须的,那就是"What",即要找的内容。下面来看整理之后的代码
  Sub Find演示()
  Dim rng
  Set rng = ActiveSheet.UsedRange.Find(What:="A")
  'MsgBox "字母A地址为" & rng.Address(0, 0)
  'MsgBox "字母A所在行为" & rng.Row
  MsgBox "字母A所在列为" & rng.Column
  End Sub