Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1176to1180
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellname mit VBA erfragen

Zellname mit VBA erfragen
Ulf
Hallo Ihr Excel-Profis,
kurze und für euch sicher einfache Frage:
Zelle B2 hat den Namen Anzahl_Seiten und den Wert 5
Range("Anzahl_Seiten") lifert 5
Range("Anzahl_Seiten").Name lifert Tabelle1!$B$2
Range("Anzahl_Seiten").Address(fals, false) liefert B2
was muß ich schreiben um dem Namen der Zelle zu erhalten, also
Range("B2").? soll liefern "Anzahl_Seiten"
Danke Ulf

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Range("B2").Name.Name
22.09.2010 12:27:25
jaja
.
AW: Range("B2").Name.Name
Ulf
jaja kurz und knapp und vorallem gut!
Hat funktioniert!
Ulf Danke
Namen für Bereiche nur per Schleife ermittelbar
22.09.2010 12:34:53
NoNet
Hallo Ulf,
das Abfragen eines Namens zu einer Zelle ist nicht ganz so einfach :
Während ein Name immer einem festen oder dynamischen Bereich zugeordnet ist und jede Zelle in der Mappe einmalig ist, kann umgekehrt aber jede Zelle mehrere Namen besitzen oder Bestandteil mehrerer Namen sein. Daher ist eine eindeutige Zuordnung eines Namens zu einer Zelle nicht möglich. Das kann man nur per Schleife ermitteln.
Beispiel : es sind folgende Namen definiert :

Auf die Zelle D5 beziehen sich nun also 3 Namen (Test1, Test2, Test4). Welcher Name sollte denn nun angezeigt werden ?
Mit einer VBA-Schleife funktioniert das folgendermaßen :
VBA-Code:
Sub NamenAuflisten()
    Const strZelle = "$D$5" 'Zelle D5 soll geprüft werden
    Dim lngN As Long, strZellen As String
    For lngN = 1 To Names.Count
        If Range(Names(lngN).Name).Address = strZelle Then
            strZellen = strZellen & Names(lngN).Name & vbLf
        End If
    Next
    MsgBox "Für Zelle " & strZelle & " sind folgende Namen definiert :" & _
        vbLf & strZellen
End Sub
Gruß, NoNet
Aktuelle Infos und Anmeldung zum => Exceltreffen 2010 <= in Neubrandenburg (15.-17.10.2010) :
Treffen der Excel-Freunde und zahlreicher Helfer aus diversen Excel-Foren.
Auch DU kannst daran teilnehmen ... => Klicke hier <=

AW: Namen für Bereiche nur per Schleife ermittelbar
Ulf

Hallo NoNet,
ich habe das getestet, es gibt ein Problem mit
Names.Count. Er sprint sofort zu Next und weiter.
Es gibt kein Names(1).Name
MsgBox Names(1).Name liefert Fehler Index außerhalb des Bereichs
Was tun?
Ulf
AW: Namen für Bereiche nur per Schleife ermittelbar
EvilRik

Huhu,
so sollte es gehen.

For lngN = 1 To ThisWorkbook.Names.Count
If Range(ThisWorkbook.Names(lngN).Name).Address = strZelle Then
strZellen = strZellen & ThisWorkbook.Names(lngN).Name & vbLf
End If
Next
Gruß Henrik

AW: Namen für Bereiche nur per Schleife ermittelbar
Ulf

Henrik, danke ads klappt
Gruß Ulf
Anzeige
AW: Namen für Bereiche nur per Schleife ermittelbar
Ulf
Hallo NoNet,
ich habe das getestet, es gibt ein Problem mit
Names.Count. Er sprint sofort zu Next und weiter.
Es gibt kein Names(1).Name
MsgBox Names(1).Name liefert Fehler Index außerhalb des Bereichs
Was tun?
Ulf
AW: Namen für Bereiche nur per Schleife ermittelbar
22.09.2010 13:48:35
EvilRik
Huhu,
so sollte es gehen.

For lngN = 1 To ThisWorkbook.Names.Count
If Range(ThisWorkbook.Names(lngN).Name).Address = strZelle Then
strZellen = strZellen & ThisWorkbook.Names(lngN).Name & vbLf
End If
Next
Gruß Henrik

AW: Namen für Bereiche nur per Schleife ermittelbar
Ulf
Henrik, danke ads klappt
Gruß Ulf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige