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

Bereichsnamen mit VBA erstellen und ändern

Bereichsnamen mit VBA erstellen und ändern
10.12.2016 19:02:01
Gerhard
Hallo Excelianer,
mit diesem Makro schreibe ich jeweils nach einem Kopiervorgang das aktuelle Datum in das Blatt "Protokoll".
Der Kopiervorgang soll jedes Mal protokolliert werden.
Der letzten Zelle soll ein Name zugeordnet werden, bzw. die Zuordnung des Namen soll immer an die letzte gefüllte Zelle
angepasst/geändert werden.
Sub datum_eintragen()
Dim x
x = Worksheets("Protokoll").Cells(Rows.Count, 2).End(xlUp).Row + 1
Cells(x, 2).Value = Now
Cells(x, 3).Value = "Test"
End Sub

Die jeweils letzte Zellen sollen als Bereichsnamen zur weiteren Verwendung festgelegt werden:
(X, 2) als "x_datum" und (x, 3) als "x_text".
Sub Makro_recorder()
With ActiveWorkbook.Names("x_datum")
.Name = "x_datum"
.RefersToR1C1 = "=Protokoll!R8C2"
.Comment = ""
End With
End Sub

Die Anpassung des aufgezeichneten Makros gelingt mir nicht.
Für den berichtigten Code bedanke ich mich im Voraus.
Gruß
Gerhard

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

Betreff
Datum
Anwender
Anzeige
AW: Bereichsnamen mit VBA erstellen und ändern
10.12.2016 19:47:46
Beverly
Hi Gerhard,
versuche es mal auf diese Weise:
Sub datum_eintragen()
Dim x
Dim namName As Name
Dim blnVorhanden As Boolean
x = Worksheets("Protokoll").Cells(Rows.Count, 2).End(xlUp).Row + 1
Cells(x, 2).Value = Now
Cells(x, 3).Value = "Test"
For Each namName In ThisWorkbook.Names
If namName.Name = "x_datum" Then
blnVorhanden = True
Exit For
End If
Next namName
If blnVorhanden = True Then
ThisWorkbook.Names("x_datum").RefersTo = "=Protokoll!" & Cells(x, 2).Address
Else
ThisWorkbook.Names.Add Name:="x_datum", RefersTo:="=Protokoll!" & Cells(x, 2).Address
End If
End Sub


Anzeige
AW: Bereichsnamen mit VBA erstellen und ändern
10.12.2016 19:51:55
Nepumuk
Hallo,
teste mal:
Public Sub Datum_eintragen()
    Dim lngRow As Long
    With Worksheets("Protokoll")
        lngRow = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
        With .Cells(lngRow, 2)
            .Value = Now
            .Name = "x_datum"
        End With
        With .Cells(lngRow, 3)
            .Value = "Test"
            .Name = "x_text"
        End With
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Danke an Beverly + Nepumuk
10.12.2016 20:24:05
Gerhard
Hallo Beverly und Nepumuk,
beide Lösungen erzeugen schnell den geünschten Namen. Ich werde diese wohl abwechselnd einsetzen ;-)
Danke und Gruß
Gerhard

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige