我试图想出一个从两个输入行(y1和y2)读取变量的代码,并在函数中使用那些返回新值(y2')到第三行的代码。即从表工作簿获取值到函数工作簿,并将新值返回到原始表工作簿。通过这样做,我希望我不必为每个输入值创建一个新的功能工作簿/表。这有可能吗? 我一直在试用VBA和Python / xlwings,但没有运气。我自己并不是程序员,而且这个任务看起来如此巨大的原因。任何帮助将不胜感激!
PS的数字可能会使问题更加清晰,但作为一个菜鸟,我不允许发布数据。请在此链接位置找到解释性图片:https://db.tt/AxFG9snn答案 0 :(得分:1)
是的,这绝对是可能的,我不是专业程序员,所以我会尽力向您解释代码。您只需要在vba编辑器中编写一个简单的代码。几个月前,我在你的鞋子里。这是一个例子。 此代码从Book1.xlsx获取输入(Sheet1中的单元格A1和B1)计算输出并将其存储回Book1。当前/活动工作簿的公式/函数为C1 = SUM(A1:B1)。
Sub Code()
' Gets input from another workbook
Dim wb1 As Workbook ' Declaring wb1 and wb2 as variable of type Workbook
Dim wb2 As Workbook
Set wb1 = Workbooks.Open("book1.xlsx") 'Note: In order to access data from another workbook, it should be open.
Set wb2 = ThisWorkbook 'ThisWorkbook: refrence to the workbook having this code
wb2.Sheets("Sheet1").Range("A1") = wb1.Sheets("Sheet1").Range("A1") 'Access value stored in cell A1 of sheet1 in book1 and stre it in cell A1 of book2
wb2.Sheets("Sheet1").Range("B1") = wb1.Sheets("Sheet1").Range("b1")
wb1.Sheets("Sheet1").Range("C1") = wb2.Sheets("Sheet1").Range("c1") 'Store the output (cell C1 of book2) in cell C1 of book1
End Sub
您可以轻松地对一系列单元格执行此操作,也可以在偏移中引用单元格。我希望它有所帮助。