有誰知道如何從例如該樣本單元格公式如下字符串:如何獲得僅從單元格公式的WS名稱引用
公式: =主A1:A10
通緝字符串: 主要
我想使用VB.net或VBA來做到這一點。我可以做什麼的可能方法是什麼?我是否應該爲此使用字符串函數並應用使其獲得所需輸出的條件?或者在vb.net的excel interop中有函數會讓我這樣做?
我只是需要一些小的代碼片段。我會感謝您的幫助!
有誰知道如何從例如該樣本單元格公式如下字符串:如何獲得僅從單元格公式的WS名稱引用
公式: =主A1:A10
通緝字符串: 主要
我想使用VB.net或VBA來做到這一點。我可以做什麼的可能方法是什麼?我是否應該爲此使用字符串函數並應用使其獲得所需輸出的條件?或者在vb.net的excel interop中有函數會讓我這樣做?
我只是需要一些小的代碼片段。我會感謝您的幫助!
你可以使用這個我認爲這將工作:
dim SheetName as string
SheetName = mid(YourSheet.Range("A1").FormulaR1C1.split("!")(0),2)
if InStr(SheetName, "(") <0 then
SheetName = split(SheetName,"(")(1)
end if
我希望這種變化將滿足你的追求。
爲了讓你開始,假設A1包含你的公式。
Sub test()
Dim rng As Excel.Range
Set rng = Excel.Range("$A$1")
Debug.Print rng.Precedents.Worksheet.Name
End Sub
Precedents
爲您提供了該小區所依賴的Range
。這可能是也可能不是連續的。 Range
對象具有Worksheet
屬性(將其視爲Range
的父級),Name
返回該工作表的名稱。
優雅地說,這不依賴任何字符串解析。如果公式依賴於多個工作表,則需要增強此功能,但這會讓您開始。
這對我來說應該是一個好的開始,會研究這個功能。謝謝。 – TDL 2014-09-20 07:23:02
謝謝。如果我的公式是= SUM(main!A1:A10),它並不僅僅是主要的。它包含SUM(字符串。 – TDL 2014-09-20 07:22:21