Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Name eine benannten Bereiches finden

Betrifft: Name eine benannten Bereiches finden von: Specke
Geschrieben am: 17.07.2008 08:22:37

Hallo Experten,

ich habe in einem Tabellenblatt sehr, sehr viele benannte Bereiche.
Wie kann ich herausfinden, zu welchem Namen eine bestimmte Zelle gehört?

Danke und Gruß
Specke

  

Betrifft: cells(1,1).Name.Name o.T. von: ypsilon
Geschrieben am: 17.07.2008 08:35:04

o.T.


  

Betrifft: AW: cells(1,1).Name.Name o.T. von: Specke
Geschrieben am: 17.07.2008 08:46:02

Hallo ypsilon,

vielen Dank für Deine Antwort.

Ich habe Deinen Ansatz getestet und festgestellt, dass er nur funktioniert, wenn ich genau weiß, wie groß der benannte Bereich ist.
Die Zelle ist aber evtl. nur Teil des benannten Bereiches. Gibt es dafür auch eine Lösung?

Danke und Gruß
Specke


  

Betrifft: AW: Name eine benannten Bereiches finden von: Mac4
Geschrieben am: 17.07.2008 09:09:00

Moin,

versuchs mal so:

Sub test()
Dim nme As Name

For Each nme In ActiveWorkbook.Names
    If Not Intersect(Range(nme), ActiveCell) Is Nothing Then
        MsgBox "Gehört zu " & nme.Name
    End If
Next
End Sub



Marc


  

Betrifft: AW: Name eine benannten Bereiches finden von: Specke
Geschrieben am: 17.07.2008 09:55:21

Hallo Marc,

vielen Dank. Passt gut!

Gruß
Specke


  

Betrifft: nachgefragt ...? von: Matthias L
Geschrieben am: 17.07.2008 11:49:26

Hallo Marc

Hast Du auch eine Idee bei nicht zusammenhägenden Zellen, bei denen ein Name vergeben wurde
Da kommt eine Fehlermeldung.

Habs mit .Range(Array(Bereichsname)) versucht, klappt aber nicht.
Hast Du eine Idee?

ansonste hab ichs gespeichert :o)
Ich schau allerdings erst heute nacht wieder rein.

Gruß Matthias


  

Betrifft: AW: nachgefragt ...? von: Mac4
Geschrieben am: 17.07.2008 12:10:18

Hallo Matthias,

vielleicht so?

Sub test()
Dim nme As Name, Bereich As Range, splt As Long, Arr

For Each nme In ActiveWorkbook.Names
    Arr = Split(nme, ",")
    For splt = 0 To UBound(Arr)
        Set Bereich = Range(Arr(splt))
        If Not Intersect(Bereich, ActiveCell) Is Nothing Then
            MsgBox "Gehört zu " & nme.Name
        End If
    Next
Next
End Sub



Marc


  

Betrifft: Perfekt, Danke & Gruß nach Köln ... _oT von: Matthias L
Geschrieben am: 17.07.2008 23:16:44




 

Beiträge aus den Excel-Beispielen zum Thema "Name eine benannten Bereiches finden"