繁体   English   中英

(VBA)提取并复制并粘贴指定日期范围内的列值以获取相应的行值

[英](VBA) Extract and copy and paste column values for specified date range for corresponding row values

我已经坚持了一段时间了。 我需要的是标题-我拥有的是:

表格1:
10亿个大多数不必要的列。

Column D: Values I need         Column F:         Column M:
Revenue                         Names             Date

12                              John              1/24/2016  2:40:02 AM
15                              Sarah             3/2/2016   4:35:17 PM
14                              Sarah             7/17/2016  1:50:10 PM
20                              Matt              8/20/2012  4:16:12 AM
10                              John              11/19/2015 5:04:05 AM
etc.                            etc.

当前工作表2: 数据透视表*

Row Label:                  
Sarah     
Matt
John
etc.

所需的工作表2 数据透视表+ *

Row Label:             Column __:  
                       Revenue

Sarah                  29
Matt                   0 *(note: see below, but = 0 because Matts value corresponded to date 2012)
John                   22
etc.

关于工作表2的重要一点是,我想告诉VBA查找工作表中最接近的空列,并输入S1中D列的值(重复项的总和),但仅求和并提取从今天的日期开始的值到11个月之前。 目前,我制作了一个模块,可以自动为下一张工作表创建数据透视表,但是我想将上面的内容添加一会儿,只是卡住了。

我还假设如果我告诉VBA提取相应行标签名称的数据,则不必指定sum。 我当时正在考虑在工作表2上放置一个“开始日期”和“结束日期”单元格以供参考,或以某种方式使用TODAY()函数作为日期,但不确定如何指定从今天到今天的日期范围的提取和求和值。 11个月前。

编辑:*请注意,这是我当前情况的精简版本,所有内容都较大,为避免混淆,需要枢轴,但出于这个问题,我选择将其稀释。

您真的需要数据透视表吗?

如果不这样做,则只需创建一个包含所有名称的新工作表,为要考虑的开始日期设置一个单元格,然后= sumifs

例如

在Sheet2 B1上放入1/24/2016。 然后在A2上插入名称(例如,Sarah),在B2上输入公式

=Sumifs(Sheet1!D:D,Sheet1!F:F,A2,Sheet1!M:M,">"&B$1)

之后,只需列出名称,然后将公式拖到每个名称旁边即可。

*我的擅长语言是葡萄牙语,所以该公式可能需要一些其他调整才能起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM