VBA Excel:返回范围的父级工作簿
如何返回包含给定范围的工作簿的名称?
Range.Parent
给出父页面…是可能的父工作簿? 对Range.ParentWorkbook
的影响
findwindow的评论作为一个例子(后是社区维基 – 没有信贷)
你可以像创build一个UDF一样使用Range
作为参数:
Private Function GetWorkbookName(myCell As Excel.Range) As String Dim a As Excel.Worksheet Set a = myCell.Parent GetWorkbookName = a.Parent.Name End Function
例如使用:
Sub Foo() Dim parentWorkbookName As String parentWorkbookName = GetWorkbookName(Range("A1")) MsgBox parentWorkbookName End Sub
晚会来临之前,请注意,这也可以在一行中完成(在Excel 2010中testing):
myRange.Worksheet.Parent.name
macros人的GetWorkbookName()函数将是简单的:
Private Function GetWorkbookName(myRange As Excel.Range) As String GetWorkbookName = myRange.Worksheet.Parent.name End Function
示例使用是一样的:
Sub Foo() Dim parentWorkbookName As String parentWorkbookName = GetWorkbookName(Range("A1")) MsgBox parentWorkbookName End Sub