Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1360to1364
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

Spalten nach Änderung kopieren

Spalten nach Änderung kopieren
08.05.2014 12:25:21
Jan
Liebe Forumgemeinde,
ich benutzte das Forum oft, um mir hilfreiche Einträge anzusehen. Leider lernen wir im Studium nur ein bisschen Java (obwohl wir gerne VBA gehbat hätten), sodass ich das gelernte noch nicht auf VBA übertragen kann, daher wäre ich überaus Dankbar bei Hilfe zu folgendem Problem.
Ich habe in Zeile 1 eine Überschrift (A-R), danach kommen X Zeilen mit Spalteneinträgen von A-R. In Spalte E steht eine 5 Stelle Zahl z.B. 20014. Nun soll beginnend ab Spalte 2 nach jeder Änderung in der Zahlenfolge in Spalte E z.B
20014
20014
20014
20015
die vorheringen Zeilen der gleichen Nummer hier z.B. alle 20014 inkl der Überschrift in in Zeile 1 in ein neues Arbeitsblatt kopiert werden und dort die Summe für Spalte E gezogen werden. Dies soll so lange passieren, bis man am Ende des ersten Arbeitsblattes auf eine Leerzeile stößt.
Im Prinzip soll es das copy and paste per Hand ersetzten.
Ich habe folgenden Code gefunden, welcher schon mal ein Leerzeichen zwischen die Nummernblöcke setzt:
Public Sub Leere_Zeile_bei_Wechsel()
Dim lngRow As Long
Application.ScreenUpdating = False
For lngRow = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
If Cells(lngRow, 1).Value  Cells(lngRow - 1, 1).Value And _
Not IsEmpty(Cells(lngRow, 1)) And Not IsEmpty(Cells(lngRow - 1, 1)) Then _
Rows(lngRow).Insert Shift:=xlShiftDown
Next
Application.ScreenUpdating = True
End Sub

Leider sind meine Versuche kläglich gescheitert, diesen Code umzuschreiben, weil mir die ganzen VBA Begriffe noch nicht so viel sagen.
Wie gesagt würde ich mich über Hilfe freunen.
Besten Dank

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Vorschlag
08.05.2014 13:11:14
Erich
Hi Jan,
probier mal

Option Explicit
Sub Leere_Zeile_bei_Wechsel2()
Dim zV As Long, zB As Long, lngV As Long
With Sheets("Tabelle1")
zV = 2
'      Application.ScreenUpdating = True
Do While .Cells(zV, 5)  ""
lngV = .Cells(zV, 5)
zB = zV
Do While .Cells(zB + 1, 5) = lngV
zB = zB + 1
Loop
Worksheets.Add
.Rows(1).Copy Cells(1, 1)
.Range(.Rows(zV), .Rows(zB)).Copy Cells(2, 1)
Cells(zB - zV + 3, 5).Formula = "=SUM(E2:E" & zB - zV + 2 & ")"
'         Cells(zB - zV + 3, 5).Formula = "=E2*" & zB - zV + 1
zV = zB + 1
lngV = .Cells(zV, 5)
Loop
End With
Application.ScreenUpdating = True
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige