2016-07-27 86 views
-1

我需要通过使用用户定义的函数将我的单元格内容在Excel工作表中放到另一个工作表中。所以我搜索了stackoverflow并找到了下面的vba代码。获取单元格内容到另一个表格

Function GetValue(sheetName As String, cellAddress As String) As Variant 
    GetSheetValue = ThisWorkbook.Sheets(sheetName).Range(cellAddress) 
End Function 

这是我预期的正确的事情,但它不适合我。我需要开发一个用户定义的函数,如下所示。

=GetContent(Sheet1,B6) 

我试过很多东西,但我做不到。所以我对这件事的回应非常有趣。 (提供有关我的例子截图)

谢谢 ScreenShot 02 ScreenShot 03

+0

我会认为这是练习。 '= GetContent(“Sheet1”,“B6”)'因为需要字符串,所以它们必须用引号引起来。但是'= Sheet1!B6'现在没有vba。 –

+0

还要确保该代码位于附加到工作簿而不是工作表或ThisWorbook代码的模块中。 –

+0

@ScottCraner不是引号输入的字符串问题(vba会将它们转换为函数中指定的字符串类型)。仔细看屏幕截图,你会看到OP没有大写,所以没有找到工作表 – RGA

回答

0

我已经找到了答案。我的功能必须正确,如下面的代码。

Function GetContent(sheetName As String, cellAddress As String) As String 
    GetContent = ActiveWorkbook.Sheets(sheetName).Range(cellAddress) 
End Function 

我没有关心abot函数名并返回相同。但我们必须做到这一点。同样在字符串数据类型中,我们使用quotaions和区分大小写。所以感谢你们所有人的宝贵帮助。它帮助我找出答案。现在我们可以使用如下功能。

=GetContent("Sheet2","b5") 

谢谢!

相关问题