0

我正在开发一个可以从 dset 函数或 Visual Basic 脚本中受益的 excel 项目。我设想的是一个类似于 excel 的dget数据库函数的函数,但它不是从满足条件的数据库/表中获取数据,而是将数据设置/插入到满足条件的交叉点的表中​​。我有一个相当大的数据集,因此该功能需要高效。

我的表将具有类似于此的结构:在此处输入图像描述

我希望有能力做类似的事情:

dset(NetSales,Actual,FY10,Jan,Jan_Fcst_Amt,1000)  

其中 1000 是我设置的值。

我的目标是能够提取预测场景,将其输入到表格中,然后用作数据透视表的数据源。

有没有人做过这样的事情。什么是最好的方法。任何帮助将不胜感激。

4

1 回答 1

1

这是一种可能的方法:

创建一个隐藏列,它连接用于选择行的列(不要忘记字段分隔符),例如=A2 & "|" & B2 & "|" & C2 & "|" & D2

在 VBA 函数Application.WorksheetFunction.Match()中,用于查找复合列中行搜索字段连接的偏移量。

然后用于Application.WorksheetFunction.Match()查找列搜索字段的偏移量。

可以ActiveSheet.Cells(x,y).Formula=z用来设置所需的单元格。

这种方法最大限度地利用了 Excel 的内置函数,这些函数应该比你用 VBA 编写的任何东西都要快。

于 2013-02-22T21:04:10.633 回答