EXCEL VBA 多表查询

想在A列中输入编号,后面B到H列信息就能出来,但是一直用公司做出来的只能查一个表,多个表就没法查了,但是我这有sheet1-10总共10个表,如果可以用公式也可以不用VBA,其他表格的表头是一样的

假定sheet2-sheet10的A列总和中有且只有一个编号与sheet1的A列相同,假定所有表格没有空行,用如下VBA程序可以实现多表查询:

Sub 多表查询()
Dim rag1 As Range, ragi As Range
Dim ws  As Worksheet
Dim i As Integer, j As Integer
For Each rag1 In Sheets(1).Range("A:A")
  If rag1.Row > 1 Then
    If rag1.Value = "" Then Exit For
    For i = 2 To Sheets.Count
      For Each ragi In Sheets(i).Range("A:A")
        If ragi.Row > 1 Then
          If ragi.Value = "" Then Exit For
          If ragi.Value = rag1.Value Then
            For j = 1 To 7
              rag1.Offset(0, j).Value = ragi.Offset(0, j).Value
            Next j
            GoTo l
          End If
        End If
      Next
    Next i
  End If
l:
Next
End Sub

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-02-05
你一个表可以查,多个表也是一样的,只需要增加在工作表间进行循环来查找即可追问

就是因为循环的话,嵌套层数太多了,不能查阿

第2个回答  2014-02-05
没有文件不好写VBA
相似回答