像函数一样使用excel工作簿

时间:2014-07-01 13:19:17

标签: python excel function vba

我在相关主题上发现了这一点 - Excel function to make SQL-like queries on worksheet data?

但我想知道是否有任何方法可以在单独的工作簿/文件中使用excel工作簿/文件(如函数)
所以我有一个excel工作簿,它有一个控制页面 - 我可以输入参数 1,2,3 。并根据这些参数,outpage页面将显示相关数据。我知道我可以复制输出页面以显示所有三个参数的输出并将它们链接到我的其他工作簿。

但是,有没有办法(在另一个excel文件中)做FILENAME_otherfile.function(1).range(A1)之类的东西?用参数1作为输入提取单元格 A1
在同一个文件中也可以拨打FILENAME_otherfile.function(2).range(A1)

1 个答案:

答案 0 :(得分:2)

有一种非常不优雅的方式,但我们可以保持界面尽可能漂亮。

  1. 使用Application.Workbooks.Open()
  2. 打开工作簿
  3. 出于审美原因将其属性设置为Hidden
  4. 假设您要操作" Sheet1" 上的单元格,然后设置InputRangeOutputRange(您将看到输出的单元格)在打开的工作簿中的适当范围内。
  5. 更改InputRange.Cells(m,n).Value
  6. 进入一些变量会发生什么,例如

    Dim MyAnswer as Double 
    MyAnswer =  OutputRange.Cells(x,y)
    
  7. 关闭工作簿,最好不要保存(正如编程逻辑所要求的那样),并使用MyAnswer值作为&#39;函数&#39; 输出。< / p>