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

Doppelte Werte

Doppelte Werte
20.11.2002 21:40:39
Alexander W
Ich hoffe, ihr könnt mir bei folgender Aufgabenstellungen behilflich sein:
Ich möchte aus einem Excel Arbeitsblatt eine ganze Zeile in ein anderes Arbeitsblatt verschieben können und die dabei entstehende Leerzeile automatisch löschen lassen.
Ich markiere eine Zelle in Arbeitsblatt 2.
Die dazugehörige Zeile soll in ein anderes Arbeitblatt der gleichen Exceltabelle verschoben werden. In Spalte B können 2 gleiche Auftragsnummern vorhanden sein.
Wenn ich eine Zeile verschiebe, soll die Zeilen die die gleiche Auftragsnummer (in Spalte B) enthält, gelöscht werden.
Nur die Daten aus Spalte C D E F G H sollen in Arbeitsblatt 1 eingeschrieben werden. Die Zellen A B I J sollen leer sein.
In E soll der Buchstabe „g“ eingetragen werden.
Die Daten aus Spalte C D E F G H sind bei gleicher Auftragsnummer (in Spalte B) immer identisch.
Ist so etwas mit VBA zu lösen?
Bitte um eure Hilfe!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Doppelte Werte
21.11.2002 00:09:02
Martin Bolleter
Hallo Alexander

diesen Thread habe ich nun glaube ich schon zu x-ten mal gesehen, in diversen Foren ...
Ist wohl etwas komplex geschrieben!

Ich versuchs mal mit ein paar Tips, für ein komplettes Programm fehlt mir momentan die Zeit (v.a. zum Testen...):

Die ganze Operation wird am besten in einzelne abläufe unterteilt. Ich schlage vor, du kreierst einen Button, im Blatt oder in der Symbolleiste, der das makro startet. Du platzierst den Cursor in der gewünschten zeile und klickst auf den Button.

Zuerst erfolgt das Kopieren:

Zeile = ActiveCell.Row
Range(cells(Zeile,3), cells(Zeile,8)).copy destination:= Sheets("Arbeitsblatt1").cells(sheets("Arbeitsblatt1").range("A65000").end(xlup).row,1)

Das Ziel, wohin du kopierts, musst du evtl anpassen.

Nun folgt das löschen. Du speicherst den Wert der Auftragsnummer in einer Veriablen

Wert = cells(Zeile,1).value

Nun suchst du in einer Schleife im Arbeitsblatt 2 in Spalte A von unten nach oben alle Zeilen, die den gleichen Wert in Spalte A haben und löschst diese Zeilen:

LetzteZeile = range("A65000").end(xlup).row
for i=letztezeile to 2 step -1
if cells(i,1).value = Wert then cells(i,1).entirerow.delete
next i

Wenn du nicht gerade zehntausende von Datensätzen hast, sollte das in vernünftiger Zeit ablaufen. Sonst müsste man noch optimieren.

Ich hoffe, dass dir das hilft.

Gruss
Martin

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige