我会尽力解释这一点。
工作表 1 有两个单元格。第一个单元格包含一个 6 位代码(例如 123456)。
工作表 2 包含几个选项卡,每个选项卡将包含 6 位代码和旁边的图形。
我希望工作表 1 中的第二个单元格在工作表 2 的所有选项卡中找到 6 位代码,并将它们旁边的数字加起来。
这可以通过 V-lookup 实现吗?
我会尽力解释这一点。
工作表 1 有两个单元格。第一个单元格包含一个 6 位代码(例如 123456)。
工作表 2 包含几个选项卡,每个选项卡将包含 6 位代码和旁边的图形。
我希望工作表 1 中的第二个单元格在工作表 2 的所有选项卡中找到 6 位代码,并将它们旁边的数字加起来。
这可以通过 V-lookup 实现吗?
如果它们与 6 位代码匹配,您是否要对列中的值求和?
如果是这样, sumif 可能就是您所寻求的。 http://office.microsoft.com/en-us/excel-help/sumif-HP005209292.aspx
sumif 数组: http: //support.microsoft.com/kb/275165
更新:不是一个完整的解决方案,但您可以使用下面的 vba 代码创建一个主表,并在汇总表上创建一个数据透视表,并对您要汇总的所有唯一 6 位代码进行求和、计数等。您需要编辑您正在寻找的范围,并且所有工作表上的范围必须相同。如果“摘要表”工作表尚未存在,则将创建该工作表,如果它已经退出,则将其覆盖。
Sub Summarize_Table_With_Formulas()
Dim Sh As Worksheet
Dim Newsh As Worksheet
Dim myCell As Range
Dim ColNum As Integer
Dim RwNum As Long
Dim Basebook As Workbook
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
'Delete the sheet "Summary-Table" if it exist
Application.DisplayAlerts = False
On Error Resume Next
ThisWorkbook.Worksheets("Summary-Table").Delete
On Error GoTo 0
Application.DisplayAlerts = True
'Add a worksheet with the name "Summary-Table"
Set Basebook = ThisWorkbook
Set Newsh = Basebook.Worksheets.Add
Newsh.Name = "Summary-Table"
'The links to the first sheet will start in row 2
RwNum = 1
For Each Sh In Basebook.Worksheets
If Sh.Name <> Newsh.Name And Sh.Visible Then
ColNum = 1
RwNum = RwNum + 1
'Copy the sheet name in the A column
Newsh.Cells(RwNum, 1).Value = Sh.Name
For Each myCell In Sh.Range("A1:B2") '<--Change the range here
ColNum = ColNum + 1
Newsh.Cells(RwNum, ColNum).Formula = _
"='" & Sh.Name & "'!" & myCell.Address(False, False)
Next myCell
End If
Next Sh
Newsh.UsedRange.Columns.AutoFit
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub