Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellnamen auslesen

Forumthread: Zellnamen auslesen

Zellnamen auslesen
17.06.2022 15:15:19
Siegfried
Hallo zusammen,
ich möchte die verwendeten Zellnamen in meiner Datei notieren und habe in der Hilfe den nachstehenden Code gefunden:
das Beispiel aus der Excel-Hilfe hat keinen Namen vergeben und die Variablen nicht definiert

Sub Namen_auslesen()
Dim r As Integer
Dim nms As Workbook
Dim wks As Worksheet
Set nms = ActiveWorkbook.Names
Set wks = Worksheets(1)
For r = 1 To nms.Count
' Debug.Print habe ich zur Kontrolle eingefügt
Debug.Print nms(n1).Name
'        wks.Cells(r, 157).Value = nms(n1).Name
'        wks.Cells(r, 158).Value = nms(n1).RefersToRange.Address
Next
End Sub
Beim Aufruf erhalte ich die Fehlermeldung, dass die Anweisung "Set nms = ActiveWorkbook.Names" nicht unterstützt wird.
Wie muss der Code verändert werden?
Gruß
Siegfried
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellnamen auslesen
17.06.2022 15:35:47
ChrisL
Hi
Vielleicht so...

Sub t()
Dim nm As Name, r As Long
With Worksheets(1)
For Each nm In ActiveWorkbook.Names
r = r + 1
.Cells(r, 157) = nm.Name
.Cells(r, 158) = nm.RefersToRange.Address
Next nm
End With
End Sub
cu
Chris
AW: Zellnamen auslesen
17.06.2022 15:59:10
Siegfried
Hi Chris,
Der Teil " nm.Name " funktioniert,
der Teil " nm.RefersToRange.Address " aber nicht.
Bis hier aber schon mal Danke.
Gruß Siegfried
Anzeige
AW: Zellnamen auslesen
17.06.2022 16:08:47
ChrisL
Hi
"funktioniert nicht" ist keine sinnvolle Fehlerbeschreibung.
Nicht jeder Name muss sich auf einen Bereich/Range beziehen. Hiermit würde man solche Fälle quick&dirty überspringen:

Sub t()
Dim nm As Name, r As Long
On Error Resume Next
With Worksheets(1)
For Each nm In ActiveWorkbook.Names
r = r + 1
.Cells(r, 157) = nm.Name
.Cells(r, 158) = nm.RefersToRange.Address
Next nm
End With
End Sub
cu
Chris
Anzeige
AW: Zellnamen auslesen
17.06.2022 22:41:51
Siegfried
Hi Chris,
es hat etwas länger gedauert bis ich wieder einsatzbereit war.
Mit der Anweisung " On error Resume Next " funktioniert auch der zweite Teil.
Danke und
Gruß
Siegfried
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige