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

Frage zum Makro

Forumthread: Frage zum Makro

Frage zum Makro
27.08.2025 10:53:15
Wolfgang
Hallo Excel-Freunde,
irgendwie komme ich nicht weiter, habe schon viele "Befehle" über VBA in Excel hier versucht, aber keine Lösung.
Ich weiß, dass eine Beispieldatei hier von Vorteil wäre, aber ich denke es geht auch ohne.
Mein Makro funktioniert einwandfrei, aber ich möchte eben, dass auch aus der Spalte B der Tabelle A das eingetragene Datum mit kopiert wird.

Hier mein Makro:
Option Explicit

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim ErsteFreieZeile As Long
If Target.CountLarge > 1 Then Exit Sub
If Sh.Name = "Kosten" Or Sh.Name = "Tanken" Then
If Not Intersect(Target, Sh.Range("B7:O1000")) Is Nothing Then
Application.EnableEvents = False
With Sheets("Protokoll")
ErsteFreieZeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
.Cells(ErsteFreieZeile, 1) = Now
.Cells(ErsteFreieZeile, 2) = Sh.Name
.Cells(ErsteFreieZeile, 3) = Target.Address(0, 0)
.Cells(ErsteFreieZeile, 5) = Target.Value
.Cells(ErsteFreieZeile, 6) = Environ("Computername")
.Cells(ErsteFreieZeile, 7) = ThisWorkbook.FullName
End With
Application.EnableEvents = True
End If
End If
End Sub

Ich möchte nun, dass "" .Cells(ErsteFreieZeile, 8) = "Das Datum von der Spalte B aus der Tabelle A" als 'Befehl' hier funktionieren sollte "" und mit übernommen wird. Ich hoffe meine Anfrage ist verständlich.

Grüße
Wolfgang
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage zum Makro
27.08.2025 11:51:34
Kuwer
Hallo Wolfgang,

.Cells(ErsteFreieZeile, 8) = Sh.Cells(Target.Row, 2).Value

Gruß, Uwe
AW: Frage zum Makro
27.08.2025 12:02:08
daniel
Hi

gibt mehrere Möglichkeiten:

= Target.Offset(0, 2 - Target.Column).Value
= Sh.Cells(Target.Row, 2).Value
= Intersect(Sh.Columns(2), Target.EntireRow).value

Mein Favorit wäre das erste, weil es ohne die Angabe des Tabellenblatts auskommt.

Gruß Daniel

Anzeige
AW: Frage zum Makro | Danke für die Hilfe
27.08.2025 14:00:51
Wolfgang
Hallo, alle Tipps funktionieren = "Qual der Wahl" ;-)
AW: Frage zum Makro | Danke für die Hilfe
27.08.2025 14:37:58
daniel
Wie gesagt,
1 ist elegant,weil es nur Target benötigt und nicht das Blatt angegeben werden muss
2 kann man verwenden, wenn man zwar von Target die Zeile haben will aber damit auf ein anderes Blatt referenzieren will
3 würde ich verwenden, wenn ich nicht eine einzelne Zelle referenzieren will, sondern mehrere Spalten in dieser Zeile, beispielsweise um diese zu kopieren oder zu formatieren.

Gruß Daniel
Anzeige
AW: Frage zum Makro | Danke für die Hilfe
27.08.2025 15:13:27
Kuwer
Hallo Wolfgang,

oder als 4. ;-)

.Cells(ErsteFreieZeile, 8) = Target.EntireRow.Cells(1, 2).Value

Gruß, Uwe

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige