2016-07-27 100 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") 

謝謝!

相關問題