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

VBA Excel

VBA Excel
22.05.2018 14:13:35
Eva
Hallo zusammen,
leider habe ich nicht besonders viel Erfahrung in VBA. Weil ich mir mit Makros das Leben aber viel leichter machen würde, habe ich begonnen mich einzulesen – nun ja, aller Anfang ist schwer. Und so stehe ich schon seit Tagen bei folgendem Problem an:
In einer Tabelle sollen Daten abgegelichen werden. Wenn der Wert in Spalte D gleich wie der Wert in Spalte D darunter ist, dann sollen die Daten von B:I nach unten kopiert werden. Wenn er nicht gleich ist, dann nicht. Also so:
Sub kopieren()
Dim Ziel As Range
Set Ziel = Range("D" & ActiveSheet.Cells(ActiveSheet.Rows.Count, 4).End(xlUp).Row + 1)
If ActiveSheet.Range("D2").Value = ActiveSheet.Range("D3").Value Then
ActiveSheet.Range("B2:I2").Select
Selection.Copy
ActiveSheet.Range("B3").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End If
End Sub

Schön und gut, ich bin ja schon stolz, dass sich das bewegt :-) Nun will ich aber eine Schleife. Also, wenn D2 mit D3 verglichen wurde, dann soll er D3 mit D4 vergleichen und bei übereinstimmenden Werten wieder kopieren. Usw...
Ich hab es schon mit Next, Loop und auch Schleifen, "zeile = zeile + 1", ".Offset(1, 0).Select" usw... versucht. Und ich komme einfach nicht dahinter... Ich denke, das Problem ist, dass ich die Zellen (D2; D3 usw) genau definiert habe. Sobald ich aber Row +1 versuche einzubauen, haut gar nichts mehr hin.
Ich finde die Seite hier übrigens echt toll, hier kann man wirklich einiges lernen :-)
Vorba schon tausend Dank für jegliche Tipps!
Eva

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Excel
22.05.2018 15:21:07
Dieter
Hallo Eva,
wenn ich dein Problem richtig verstanden habe, dann kannst du das mit dem folgenden Programm machen
Sub kopieren()
Dim letzteZeile As Long
Dim ws As Worksheet
Dim zeile As Long
Set ws = ActiveSheet
letzteZeile = ws.Cells(ws.Rows.Count, "D").End(xlUp).Row
For zeile = 2 To letzteZeile - 1
If ws.Cells(zeile, "D") = ws.Cells(zeile + 1, "D") Then
ws.Cells(zeile, "B").Resize(1, 8).Copy Destination:=ws.Cells(zeile + 1, "B")
End If
Next zeile
End Sub
Viele Grüße
Dieter
AW: VBA Excel
22.05.2018 15:33:27
Eva
Oh wow!!! Danke, Dieter. Funktioniert perfekt
Hoffe ich bekomm das eines Tages auch so toll hin!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige