제가 원하는 것은 시트마다 이름, 주소 등 받으려면 서피스뿐 아니라 책 이름. 정말 don& # 39, 주소 (외부: = True) '와' t want to call 워크북에서 이름 있는 내 자신을 위해 시도하시겠습니까 스트립 아웃해야 구체화하십시오 총괄하였습니다. 유지됩니까 내말들어봐 내가 maxvalorarray sheet1! $1 달러 를 받을 수 있는 '콜'?
내가 생각할 수 있는 길은 워크시트의) 는 다음과 같이 이름이 셀입니다 참조에는 연결
Dim cell As Range
Dim cellAddress As String
Set cell = ThisWorkbook.Worksheets(1).Cells(1, 1)
cellAddress = cell.Parent.Name & "!" & cell.Address(External:=False)
편집:
수정하십시오 마지막 줄 수 있습니다.
cellAddress = "'" & cell.Parent.Name & "'!" & cell.Address(External:=False)
스케쳐내 있어도 공간 또는 다른 재미있는 작품 속에서 시트마다 이름을 사용할 수 있습니다.
Split(cell.address(External:=True), "]")(1)
벤 말이 맞아. 난 또 can& # 39, 어떤 방법으로 이 것 같지는 않다. D # 39 는 다음 두 가지 방법 또는 벤 i& 제안하세요 스트립 이 워크북에서 이름 끄기입니다.
Dim cell As Range
Dim address As String
Set cell = Worksheets(1).Cells.Range("A1")
address = cell.address(External:=True)
address = Right(address, Len(address) - InStr(1, address, "]"))
이 '주소 () 는' 워크시트를 함수은 정확히요 iqn. # 39 로 it& 아프리카션스부르크시트풍크션 ',' 을 통해 사용할 수 없습니다 () '' 내가 지었지 평가하십시오 솔루션을 사용하는 방법입니다.
이 솔루션을 사용하면 Excel 거래를 공간과 기타 재미있는 작품 속에서 좋은 우위를 시트마다 이름, 이는 이전 분입니다.
예:
Evaluate("ADDRESS(" & rng.Row & "," & rng.Column & ",1,1,""" & _
rng.Worksheet.Name & """)")
정확히 되돌려줍니다 " sheet1! $1 달러 로, 'a1', '범위를 " 이름이' 에 대해 셀입니다 sheet1 이 객체에는 유사환 워크시트를.
이 솔루션은 다양한 주소만 되돌려줍니다 첫 번째 셀입니다 주소가 아니라 전체 범위 (", sheet1! $1 달러 ". vs " sheet1! $. $1 달러 2 달러, b "). 그래서 나는 그것을 사용하는 사용자 정의 함수.
Public Function AddressEx(rng As Range) As String
Dim strTmp As String
strTmp = Evaluate("ADDRESS(" & rng.Row & "," & _
rng.Column & ",1,1,""" & rng.Worksheet.Name & """)")
If (rng.Count > 1) Then
strTmp = strTmp & ":" & rng.Cells(rng.Count) _
.Address(RowAbsolute:=True, ColumnAbsolute:=True)
End If
AddressEx = strTmp
End Function
전체 문서 워크시트를 기능을 사용할 수 있는 오피스 웹사이트 주소 (): https://support.office.com/en-us/article/ADDRESS-function-D0C26C0D-3991-446B-8DE4-AB46431D4F89
코드를 작성할 수 있는 다양한 함께 할 수 있습니다 처리하는 여러 지역을 않습니다.
Public Function GetAddressWithSheetname(Range As Range, Optional blnBuildAddressForNamedRangeValue As Boolean = False) As String
Const Seperator As String = ","
Dim WorksheetName As String
Dim TheAddress As String
Dim Areas As Areas
Dim Area As Range
WorksheetName = "'" & Range.Worksheet.Name & "'"
For Each Area In Range.Areas
' ='Sheet 1'!$H$8:$H$15,'Sheet 1'!$C$12:$J$12
TheAddress = TheAddress & WorksheetName & "!" & Area.Address(External:=False) & Seperator
Next Area
GetAddressWithSheetname = Left(TheAddress, Len(TheAddress) - Len(Seperator))
If blnBuildAddressForNamedRangeValue Then
GetAddressWithSheetname = "=" & GetAddressWithSheetname
End If
End Function
내가 찾은 내 사용자 정의 함수 내가 만든 다음 일했다. 내가 연결된 셀 범위 및 워크시트를 이름으로 사용된 후 참조입니다 문자열으로 평가 기술서임을 (I) 는 평가를 통해 섬프로더스).
예를 들면 다음과 같습니다.
Function SumRange(RangeName as range)
Dim strCellRef, strSheetName, strRngName As String
strCellRef = RangeName.Address
strSheetName = RangeName.Worksheet.Name & "!"
strRngName = strSheetName & strCellRef
그럼 다른 코드에 스테른냐메 () 는 다음과 같은 뜻이 있다.
[edit 켜짐이 21-04-2009]
< i>;;;;;;;;; 빨리 빨리 빨리 빨리 & & & & 로 명명된 이 경우, 마이카 때만 that< br> 지적했다. 빨리, 빨리, 빨리, 빨리 & & & &;;;; 특정 범위 (업그레이드됨 지나미 사람?) 네,, /i> < 들소네?!
[/ 편집]
조금 늦게 자, 내가 알 수 없지만, 이 경우 물릴 수 있는 사람이 구글 검색 (방금 as I), 다음 시도할 수도 있습니다.
Dim cell as Range
Dim address as String
Set cell = Sheet1.Range("A1")
address = cell.Name
이렇게 하면 전체 주소, 같은 일이 sheet1! $1 달러 = 반품하십시오 " ";).
address = Replace(address, "=", "")