Salu Reinhard,
weiß jemand, wie ich in VBA auf einen Wert zugreifen kann, den
ich in der Excel-Mappe mit „Einfügen -> Namen -> Definieren“
angelegt habe?
MsgBox ThisWorkbook.Names(„huhu“).Value
Vielen Dank für Deine Hilfe. Doch leider gibt die Methode nur den Bezug (z. B. =‚Tabelle 1‘!$E$4), nicht den Wert aus (.Value kann man folgenlos durch RefersTo ersetzen oder auch ganz weglassen, ändert nix am Ergebnis). Mir ist das auch schleierhaft. Abhilfe schaffte folgende Funktion, die ich im hier http://www.cpearson.com/excel/DefinedNames.aspx fand
Function GetNameRefersTo(TheName As String) As String
Dim S As String
Dim HasRef As Boolean
Dim R As Range
Dim NM As Name
Set NM = ThisWorkbook.Names(TheName)
On Error Resume Next
Set R = NM.RefersToRange
If Err.Number = 0 Then
HasRef = True
Else
HasRef = False
End If
If HasRef = True Then
S = R.Text
Else
S = NM.RefersTo
If StrComp(Mid(S, 2, 1), Chr(34), vbBinaryCompare) = 0 Then
' text constant
S = Mid(S, 3, Len(S) - 3)
Else
' numeric contant
S = Mid(S, 2)
End If
End If
GetNameRefersTo = S
End Function
Komisch, gell? Daß Deine Kurzfassung nicht funzt ist wirklich seltsam.
Worksheets(„Tabelle1“).Cells(x,y)
Werde ich ausprobieren.
Nochmals vielen Dank für Deine kompetente und häufige Hilfe hier im Forum. Superklasse :o)
Grüßken
-Rob.