Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
844to848
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
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilen verschieben, wenn...

Zeilen verschieben, wenn...
10.02.2007 21:39:15
Uwe
Guten Abend miteinander.
Auch nach langem Stöbern im Archiv kann ich das Problem bislang nicht lösen.
Ich benötige einen VBA-Code für:
Wenn Zelleninhalte sowohl in Spalten "C" UND "I" des Tabellenblattes "Arbeitsblatt" vorhanden sind, dann verschiebe die Zeilen nach Tabellenblatt "Container", wo sie an den vorhandenen Bestand angehängt werden.
(Der Befehl soll dann manuell über einen Button ausgelöst werden).
Danke im Voraus.
MfG
Uwe

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

Betreff
Datum
Anwender
Anzeige
AW: Zeilen verschieben, wenn...
10.02.2007 21:54:55
th.heinrich
hallo Uwe,
bin in vba nicht bewandert, aber versuche doch den Makrorecorder zu nutzen. spalte C und I mit dem Autofilter nach Nichtleeren filtern und dann den sichtbaren bereich kopieren.
wo sie an den vorhandenen Bestand angehängt werden. dafuer gibt es genug beispiele in der https://www.herber.de/ssearch.html
gruss thomas
AW: Zeilen verschieben, wenn...
11.02.2007 00:13:00
ingUR
Hallo, Uwe,
wenn die von Thomas vorgeschlagene Lösung nicht zur Aufgabenlösung ausreichen sollte, hier eine VBA-Modul-Prozedur, die die betreffenden Zeilen aus der Tabelle "Arbeitsblatt" löscht, für die Zelleninhalte in den Spalten C und I identisch sind, nachdem sie an des Ende der Einträge in auf der Tabelle "Container" angefügt wurden.
In dem Programmteil werden alle Zeilen der Tabelle "Arbeitsblatt" bis zum letzten Eintrag der Spalte A geprüft.
Option Explicit
Sub KopiereWenn_C_gleich_I()
Dim ws As Worksheet, rngR As Range, maxR As Long, r As Long
Set ws = Worksheets("Arbeitsblatt")
With ws
maxR = .Cells(.Rows.Count, 1).End(xlUp).Row
Do
r = r + 1
If Len(.Cells(r, 3).Value) > 0 And _
(.Cells(r, 3).Value = .Cells(r, 9).Value) Then
.Rows(r).Copy Sheets("Container").Range("A" & Sheets("Container").Cells(Rows.Count, 1).End(xlUp).Row + 1)
.Rows(r).Delete Shift:=xlUp
maxR = maxR - 1
r = r - 1
End If
Loop Until r > maxR
End With
Set ws = Nothing
End Sub
Ich hoffe, dass diese Prozedur als Grundgerüst genutzt werden kann. Testen solltest Du sie auf jedenfall in einer Arbeistkopie Deiner Mappe, da der Ablauf von mir nicht umfassend geprüft ist.
Gruß,
Uwe
Anzeige
AW: Zeilen verschieben, wenn...
11.02.2007 10:31:33
Uwe
Herzlichen Dank euch Beiden für eure schnelle Antwort,
es hat geklappt!
Danke und Gruß
Uwe

245 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige