我可以为我的加载项创buildExcel公式以将值input到要使用的加载项中?

我想从其他服务器获取时间序列数据并将其插入到电子表格中,并且能够将数据从电子表格上传到服务器。

目前,我有一个VBA解决scheme,它可以在单元格上或下载所find的值。

这是严重的错误,validation代码的数量正在增长和增长。

我想在一个插件上创build一个公式,它使用符号单元格和date/时间单元格,并显示来自时间序列的数据点,有点像这样用B2中的符号和col中的date/时间A:

=getDataPoint(B2, A7) =getDataPoint(B2, A8) =getDataPoint(B2, A9) =getDataPoint(B2, A10) 

然后,我会用每个单元格中的公式填充一个列范围,以获得完整的时间序列。 这个想法是减less所需validation的数量。

理想情况下,当电子表格打开或点击button时,这将填充单元格。

我假设可能的话还有一个快速的处理时间,我用什么来实现呢?

假设我可以做到这一点,一个插件可以添加另一行到范围的底部,并在那里插入公式,例如星期一,我有

 =getDataPoint(B2, A7) =getDataPoint(B2, A8) =getDataPoint(B2, A9) =getDataPoint(B2, A10) 

然后在星期二,其他人已经更新了服务器上的星期二数据的时间序列,所以我检索它,看到额外的值,并希望像这样自动扩展范围(其中date/时间在列A中):

 =getDataPoint(B2, A7) =getDataPoint(B2, A8) =getDataPoint(B2, A9) =getDataPoint(B2, A10) =getDataPoint(B2, A11) 

我对VBA的经验告诉我,Excel不会这样,但是我认为我不太了解Excel加载项模式。

我不完全有信心,这是你要找的,所以请纠正我,如果我错了。

一旦在Excel工作簿中定义了getDataPoint(Range, Range)函数,请添加所需的引用(如果有)并将该文件另存为Excel加载项(.xlam)。 不要忘记在VBE属性中命名该项目,因为您将需要名称稍后添加引用。 所有项目都默认为VBAProject,所以在添加引用时很难区分它们。

加载项创build完成后,通过选项 >> 加载项 >> Excel加载项将其添加到工作簿中。 在VBA编辑器中通过工具 >> 参考添加对您的项目的引用

你的函数现在可以像任何内置函数一样调用: =getDataPoint(B2, A7)

仅供参考,您可以通过Application.Caller属性获取函数中的调用范围。

注意:

我正在使用Excel 2010,所以选项菜单可能会与您的稍有不同。

希望这可以帮助。