vlookup多个表单,并在另一个表单中报告

我正在使用一个工作簿,其中包含许多客户的“计划付款”,每个工作表都有一个。

表单具有这种结构 – date – 价值 – 名称 – 银行 – 城市

我需要做的是search一个DATE,并将所有具有该date的行复制到另一个名为“Busca”的工作表中,在所有工作表中search。

我是初学者,我的代码草图到目前为止:

Sub Pesquisa() Dim data As Variant 'declarando a variável que vai receber a data a ser buscada Dim linha As String 'declarando a variável que vai receber o dado encontrado On Error Resume Next Worksheets("Busca").Range("relatorio").ClearContents data = B1 End Sub 

如果有人可以牵手,我也可以上传文件。

谢谢

下面是一个可以工作的代码草图,并附有以下假设。

  1. 每个客户表的Date > Value > Name > Bank > City数据位于单元格A2开始(第1行是标题)
  2. 将您的date放入Busca表单中的A1单元格中,并在该表单的第2行中inputDate > Value > Name > Bank > City标题。

您可以根据需要修改这些假设。

 Sub Pesquisa() Dim wsB as Worksheet Set wsB = ThisWorkbook.Worksheets("Busca") Dim dDate as Date dDate = wsB.Range("A1") 'assumes your desired date is in cell A1 of Busca sheet Dim ws as Worksheet For each ws in ThisWorkbook.Worksheets If ws.Name <> "Busca" Then 'check all sheets except Busca sheet ws.Range("A1:E1").AutoFilter 1, dDate If Not Intersect(ws.UsedRange,ws.UsedRange.Offset(1)).SpecialCells(xlCellTypeVisible) Is Nothing Then Intersect(ws.UsedRange,ws.UsedRange.Offset(1)).SpecialCells(xlCellTypeVisible).Copy wsB.Range("A" & wsB.Rows.COunt).End(xlUp).Offset(1) End If End If ws.AutoFilterMode = False Next End Sub