首页 > 解决方案 > 如何从另一个模块调用宏但在另一个工作表中运行

问题描述

我有一个宏可以进行一些计算,它位于“最佳”工作表上的一个模块中(顺便说一句,我不希望用户访问此工作表)。我还有 5 个其他工作表,比如说“p1”“p2”“p3”“p4”“p5”,用户可以在其中输入数据。

以“p1”开头。用户输入数据并将数据复制到“最佳”工作表并完成计算。

问题是“最佳”的结果和计算表显示在“p1”中,而不是根本不显示任何内容。

我正在尝试 Application.Run 和 Call 但我确实理解这只是将宏调用到您所在的活动工作表中,因此是我的问题。

Sub Macroforp1()

Sheets("p1").Range("TablePV1").Copy Destination:=Sheets("Optimum").Range("TableOptimum")
'
'
Call Optimum_module.TestCalc
'
End Sub

我希望代码只抓取我所在的任何一张纸上的输入,在“最佳”上运行计算,就是这样。(稍后我将抓取某一行结果粘贴到我提到的工作表中)。

标签: excelvba

解决方案


推荐阅读