让我试着说清楚:
Here's an image that illustrates what I'm trying to do.
基本上,我的目标是有一个公式,我可以放入单元格A2(或宏,如果需要),它将插入单元格B2来自的工作表的名称。在这种情况下,那将是Sheet2。我已经通过宏录制器尝试了一下,但是我无法按照我想要的方式工作。
理想情况下,我可以选择一个单元格(在本例中为单元格A2)并激活一个宏或放入一个公式,该公式将使用Sheet右侧的单元格填充该单元格(A2) (B2)来自。
非常感谢您的帮助,对于我应该使用什么或如何做到这一点的任何指导都将非常感激。
答案 0 :(得分:0)
这是一个UDF,它将为简单的=SheetX!RANGE
公式提取工作表名称。如果有多个工作表引用或根本没有工作表,它也会发出警报。
将其放在标准模块和单元格类型=ReturnSheet(B2)
Function ReturnSheet(rng As Range) As String
Dim sFormula As String
sFormula = rng.Formula
If InStr(1, sFormula, "!") = 0 Then
Dim sSheet As String
sSheet = "No sheet precedents found!"
Else
If UBound(Split(sFormula, "!")) = 1 Then
sSheet = Mid(sFormula, 2, InStr(1, sFormula, "!") - 2)
Else
sSheet = "Multiple Sheet precendents!"
End If
End If
ReturnSheet = Replace(sSheet,"'","") 'replace single quote in sheet names that has spaces
End Function