首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >宏Excel第一个工作表复制的第二个工作表值

宏Excel第一个工作表复制的第二个工作表值
EN

Stack Overflow用户
提问于 2017-07-20 14:42:39
回答 3查看 55关注 0票数 0

我在同一个Excel中有两张工作表。

第一个excel工作表包含以下字段

代码语言:javascript
复制
 No       Material           10th july  11th july
  1   DATUM DCP ESD Black                    
  2   DATUM DCP ESD Blue         

我的第二个工作表包含以下字段

代码语言:javascript
复制
No     Date             Material            Stock size+Wastage
  1  10th july      DATUM DCP ESD Black          283.47 
  2  10th july      DATUM DCP ESD Black          661.6
  3  11th july      DATUM DCP ESD Blue           665.6  
  4  11th july      DATUM DCP ESD Black           50.8

我希望在第一个工作表中得到以下预期结果:

代码语言:javascript
复制
 No      Material             10th july  11th july
  1   DATUM DCP ESD Black      945.07    50.8         
  2   DATUM DCP ESD Blue                 665.6
EN

回答 3

Stack Overflow用户

发布于 2017-07-20 15:05:35

忘记宏,只需使用数据透视表。

在将更多数据添加到透视表从中提取的集合中后,您始终可以刷新透视表。

这是数据透视表的样子:

如何在数据透视表中设置字段:

票数 4
EN

Stack Overflow用户

发布于 2017-07-20 15:00:38

这里不需要VBA。忽略第一个工作表,并从第二个工作表创建数据透视表。

票数 2
EN

Stack Overflow用户

发布于 2017-07-20 15:31:16

代码语言:javascript
复制
Sub summ()
    With Worksheets("Sheet2")
        .Range("B2:B" & Range("B" & "65536").End(xlUp).row).Name = "Dates"
        .Range("C2:C" & Range("C" & "65536").End(xlUp).row).Name = "Materials"
        .Range("D2:D" & Range("D" & "65536").End(xlUp).row).Name = "Numbers"
    End With
    With Worksheets("Sheet1")
        .Cells(2, 3).FormulaR1C1 = _
            "=SUMPRODUCT( (Worksheets("Sheet2")!Dates=R1C) * (Worksheets("Sheet2")!Materials=RC1) * (Worksheets("Sheet2")!Numbers)"
        .Range(Cells(2, 3).Address).AutoFill _
            Destination:=Range(Cells(2, 3).Address, Cells(2, Y)), Type:=xlFillDefault
        .Range(Cells(2, X).Address).AutoFill _
            Destination:=Range(Cells(2, Y).Address, Cells(X, Y)), Type:=xlFillDefault
End Sub  

其中"Sheet1“和"Sheet2”分别是第一个和第二个工作表的名称。

其中X是最后使用的行(number_of_materials - 1)。

其中Y是上次使用的列(number_of_dates - 1)。

因为这不是一个复杂的任务,所以我建议使用公式,而不是宏。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45207106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档