Hallo zusammen,
ich habe folgendes Problem.
Ich habe eine Tabelle mit rund 900 Zellen.
Ich möchte den Zellen-Inhalt als Name der Zelle vergeben.
Um nicht jede einzelne Zelle mit: "Rechtsklick - Name definieren - Tabelle auswählen - OK klicken" bearbeiten zu müssen, suche ich eine Lösung um das zu automatisieren oder alle Zellen auf einmal umbenennen zu können.
Danke schon mal und Grüße Steffen
Hallo,
meinst du vll. --> unter Formeln --> Namen --> Aus Auswahl erstellen
Zuerst Bereich / Tabelle Markieren -> Aus Auswahl erstellen --> Namen erstellen aus den Werten in z.b. Oberster Zeile und Linker Spalte
Moin!
Da ich mich frage, welchen Vorteil Du Dir davon versprichst, solltest Du mal nähere Hinweise geben.
Zusatz:
Sind außer den zu benamenden Zellen noch andere nicht relevante gefüllte Zellen vorhanden.
Prinzipiell für alle beschriebenen Zellen der Zeile 10 so:
Sub RPP()
Dim Zelle As Range
For Each Zelle In Rows(10).SpecialCells(xlCellTypeConstants)
Zelle.Name = Zelle.Text
Next
End Sub
Gruß Ralf
Hallo Ralf,
danke für deine Antwort.
Das Makro funktioniert. Danke.
Zum Hintergrund.
Die Excel die ich erstelle dient als Exportdatei. Die Excel wird mit im System hinterlegten Daten befüllt. Dies passiert aber nicht mit den normalen Zellen-Namen A1, A2 usw.. sondern mit einem Art Pfad der als Zellen-Namen hinterlegt ist. Z.B. M01K01_1, M02K02_2 usw.
Normal habe ich es immer manuell gemacht, aber meine neu Exprot-Datei wird recht groß und da ist es so schneller und leichter.
Kann man die Makro auch so anpassen, dass sie z.B. Zeile 1-100 umändert?
Danke und Grüße Steffen
Hallo,
In Selection --> d.h. vorher deine Zellen markieren --> danach Makro ausführen
Sub Makrox()
Dim Zelle As Range
For Each Zelle In Selection
Zelle.Name = Zelle.Value
Next
End Sub
Jungs,
ihr seit super. Vielen Dank für die Hilfe.
Eine Kleinigkeit habe ich noch.
Die Formel/Zellen-Namen wird so für die ganze Arbeitsmappe gespeichert.
Geht es auch nur für die Tabelle1?
Siehe Bild
Grüße Steffen
Hallo Steffen,
steht doch im Bild schon auf Tabelle1?
Hallo,
Du befindest dich in dem jeweiligen Blatt -> markierst deine Zellen --> Makro ausführen
Sub NamenErstellen()
Dim Zelle As Range
Dim Row As Integer
Dim Col As Integer
For Each Zelle In Selection
Row = Zelle.Row
Col = Zelle.Column
ActiveSheet.Names.Add Name:=ActiveSheet.Cells(Row, Col).Value, RefersTo:=ActiveSheet.Cells(Row, Col)
Next
End Sub
Super. Funktioniert einwandfrei. Danke