将特定条件会议数据从一个工作表复制到另一个工作表

我有三张工作表,一张是我写的所有支票的清单,一张是我个人帐户中的所有支票的清单,另一张是我的商业帐户中所有支票的清单。

我不知道如何使所有名称为“商业”的支票转到工作表3,名称为“个人”的支票转到工作表2。

例如:

工作表1

Name Cheque No. Date Amount Currency Personal 1234567 10/8/13 10000 HKD Business 1234567 9/8/13 10000 USD 

工作表2

 Name Cheque No. Date Amount Currency Personal 1234567 10/8/13 10000 HKD 

工作表3

 Name Cheque No. Date Amount Currency Business 1234567 9/8/13 10000 USD 

第一步:在你的“工作表1”中,你可以再添加一列作为“计数”并执行以下操作; 在这里输入图像说明

将公式向下拖动

第2步:

在“工作表2”中,您可以这样做; 在这里输入图像说明

即对于每一列;

'Name' ="Personal"&ROW(P1)

'Check No' =IFERROR(VLOOKUP(A2,Sheet1!$B$2:$F$9,2,FALSE),"")

'Date' =IFERROR(VLOOKUP(A2,Sheet1!$B$2:$F$9,3,FALSE),"")

'Amount' =IFERROR(VLOOKUP(A2,Sheet1!$B$2:$F$9,4,FALSE),"")

'Currency' =IFERROR(VLOOKUP(A2,Sheet1!$B$2:$F$9,5,FALSE),"")

向下拖动公式。

第3步:

在“工作表3”中,

在这里输入图像描述

在“名称”一栏中,将公式中的“个人”replace为“业务”。 其余的将是一样的。

确保将公式向下拖动以获得结果

这就是我的“个人”(工作表2)和“商业”(工作表3)工作表的样子;

在这里输入图像说明

在这里输入图像说明

抱歉关于图像的质量。

探索Siddharth和KazJaw的build议 – 他们很less是错的。

解决您的问题的几种常见方法:

1。

  • 在工作表2中创build一个数据透视表。
  • 在工作表3中创build一个支点。
  • 每个数据透视表都应在“报告filter”中包含名称字段 – 将其中一个设置为个人,另一个设置为Business。
  • 在工作表1中使用命名的范围,并将每个数据透视表的数据设置为该名称范围。
  • 添加新数据时,只需调整命名的范围区域并按刷新。

(上面的最后一点可能是一个非常小的macros)

2。

或者使用类似下面的macros:

 Option Explicit Sub MoveToOtherSheets() With Excel.ThisWorkbook.Sheets("Sheet1") Dim cell For Each cell In .Range(.Cells(2, 1), Cells(.Rows.Count, 1).End(Excel.xlUp)) If UCase(cell(1, 1)) = "PERSONAL" Then With Excel.ThisWorkbook.Sheets("Sheet2") cell.EntireRow.Copy .Cells(.Rows.Count, 1).End(Excel.xlUp)(2, 1) End With End If If UCase(cell(1, 1)) = "COMPANY" Then With Excel.ThisWorkbook.Sheets("Sheet3") cell.EntireRow.Copy .Cells(.Rows.Count, 1).End(Excel.xlUp)(2, 1) End With End If Next End With End Sub