Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1068to1072
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

Namen definieren bzw. kopieren ??

Namen definieren bzw. kopieren ?
20.04.2009 17:32:05
Thomas
Guten Tag,
habe für das Jahr 2008 mindestens 50 Namen in einer Spalte definiert. Jetzt sollte ich diese Namen in einer
neuen Spalte etwas abgeändert anlegen. Können die Namen irgendwie einfach kopiert werden?
zB. Umsatz_2008 nach Umsatz_2009
Einzeln kann ich ja kopieren, muss aber immer wieder neu über das Menu die Funktion aufrufen.
Vielen Dank für einen Tipp.
Thomas

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen definieren bzw. kopieren ?
20.04.2009 21:10:07
serge
Hallo Thomas
wenn ich dich richhtig verstanden habe
zB:
in A1 Umsatz_2008
in B2 die Formel: =LINKS(A1;LÄNGE(A1)-1)&"9" (ergibt :Umsatz_2009)
Gruss
Serge
AW: Namen definieren bzw. kopieren ?
20.04.2009 21:12:35
Ramses
Hallo
Das geht nur mit VBA.
Probiere das mal aus
Sub Create_New_Names()
    'by Ramses
    Dim isCol As Long, tarCol As Long
    Dim tarWks As String, oldName As String, newName As String
    Dim tmpAddress As Range
    Dim testName As Name
    'Nur Namen die in dieser Tabelle vorkommen ändern
    tarWks = "Tabelle1"
    'Existierende Namen sind in der Tabelle jetzt an diese Spalte gebunden
    '1 = A, 2 = B, 3 = C usw.
    isCol = 1
    'Namen sollen nun an diese Spalte gebunden werden
    tarCol = 3
    'Das ist der alte Begriff der in ALLLEN existierenden Namen vorkommen muss
    oldName = "2008"
    'Das ist der neue Begriff der in den Namen vorkommen soll
    newName = "2009"
    For Each testName In ThisWorkbook.Names
        'prüfen ob der Name in der Zieltabelle vorkommt
        If InStr(1, testName.RefersToLocal, tarWks) > 0 Then
            'Prüfen ob der Suchbegriff "OldName" im Namen vorkommt
            If InStr(1, testName.NameLocal, oldName) > 0 Then
                'Address in einen Bereich umwandeln
                Set tmpAddress = Range(Right(testName.RefersToLocal, Len(testName.RefersToLocal) - InStr(1, testName.RefersToLocal, "!")))
                'Prüfen ob der Name an die Zielspalte "isCol" gebunden ist
                If tmpAddress.Column = isCol Then
                    ActiveWorkbook.Worksheets(tarWks).Names.Add Name:=Replace(testName.NameLocal, oldName, newName, 1), _
                    RefersTo:="=" & tarWks & "!" & Cells(tmpAddress.Row, tarCol).Address
                End If
            End If
        End If
    Next
End Sub

Gruss Rainer
Anzeige
So wie Thomas das beschrieben hat,...
21.04.2009 02:39:59
Luc:-?
...hätte wohl Serge's Lösung ausgereicht, Rainer... ;-)
Gruß Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige