excel - 使用 VBA 将字段从另一个数据源添加到数据透视表

标签 excel vba

我在使用 VBA 之前创建了数据透视表,但我的教授最近给了我们一个奖励,虽然没有必要,但让我发疯了。

使用 VBA 宏将 Region、District 和 Store Name 写入您的第一个报告以创建新报告

1)我的第一份报告是这样的:

  Location | Sum of ActNetSales | Sum of PlanNetSales 
 ----------|--------------------|--------------------- 
         1 | $76,170            | $65,172             
       100 | $163,691           | $140,057            
       101 | $34,724            | $29,710             
       104 | $70,501            | $60,322             
       106 | $113,826           | $97,391  

2) 以下是上述报告的数据来源。
Division | Year | Week | Location | SchedDept | PlanNetSales | ActNetSales | AreaCategory 
 ----------|------|------|----------|-----------|--------------|-------------|-------------- 
         5 | 2018 |   10 |      520 |       541 |       1943.2 |    2271.115 | Non-Comm     
         5 | 2018 |   10 |      520 |       608 |       4378.4 |    5117.255 | Non-Comm     
         5 | 2018 |   10 |      520 |      1059 |       1044.8 |     1221.11 | Comm         
         5 | 2018 |   10 |      520 |      1126 |         6308 |    7372.475 | Non-Comm   

3) 我的教授要我在上表中添加以下信息:Region, District 和 Store Name。但是,这 3 个字段来自与上述报告不同的数据源。下面是我列出的 3 个字段的数据源。
  Division | Location | LocationName | Region | RegionName | District | DistrictName 
 ----------|----------|--------------|--------|------------|----------|-------------- 
         5 |        1 | Location 1   |      3 | Region 3   |       18 | District 18  
         5 |        4 | Location 4   |      5 | Region 5   |       32 | District 32  
         5 |        5 | Location 5   |      3 | Region 3   |       19 | District 19  
         5 |        6 | Location 6   |      5 | Region 5   |       28 | District 28

我通过加入 2 个表(通过连接外键创建一个键 - 位置和除法:创建一个唯一键并使用基本索引/匹配)创建了他在上面要求的内容,并从中创建了一个数据透视表,但我想尽我所能解决奖金!不幸的是,我没有 Power Query,所以我不得不这样做。我已经尝试搜索上述内容,但找不到任何好的资源。您有什么可以建议或只是指出我正确的方向吗?谢谢!

最佳答案

修改 (2) 下的表以在第三个表上使用 VLOOKUP 添加列 region、district 和 storename 是否作弊?然后,第二个表将包含原始数据和额外的构造数据列,使用 Excel VLOOKUP 技巧而不是实际的 SQL 表连接将其有效地连接到第三个表。

然后,您可以只使用扩展的连接表作为您的一个数据透视表源。

在爱情、 war 和 IT 解决方案中,作弊是合法的。

关于excel - 使用 VBA 将字段从另一个数据源添加到数据透视表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56203791/

相关文章:

excel - 使用合并单元格过滤工作表中的数据

vba - 使用多个大小写是 <>

excel - 如果参数为设置为单元格范围的变体数组,则 CallByName 会出现意外结果

excel - vba application.workbooks.open() 错误 1004 应用程序定义或对象定义错误

excel - VBA将符合条件的行复制到另一个工作表

c# - 如何在不锁定的情况下打开 Excel 文件?

vba - 如何在 Excel 中从逗号分隔列表构建下拉列表

reference - 如何在 Excel 中对另一个工作簿进行相对引用?

ruby-on-rails - VBA Heroku 集成?

vba - 在VBA(Excel)中的公式内插入双引号字符串