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

aussieben

aussieben
17.10.2002 13:58:06
JPonde
Hilfe

Ich bräuchte ein Makro das mir hilft auszusieben.
Und zwar folgende Situation: ich habe 4 Tabellenblätter

In Tabelle1 stehen in den Zeilen 10 bis 730, je 30 Werte (A10 bis AD10, A11 bis AD11,....)
Beispiel: A B C bis AD
Zeile 10: 1 3 5 .... 7
Zeile 11: 2 4 6 .... 8
bis
Zeile 730: 9 6 8 .... 5

In den Zeilen 2, 4 und 6 stehen je 16 Werte (A2 bis Q2, A4 bis Q4, A6 bis Q6)
Beispiel: A B C bis Q
Zeile 2: 1 2 3 .... 4
Zeile 4: 8 7 6 .... 4
Zeile 6: 1 2 7 .... 8

Jetzt soll jeder einzelne Wert aus den Zeilen 10 bis 730 mit jedem Wert aus Zeile 2 verglichen werden. Ist der Wert nicht vorhanden, soll dieser Wert in Tabelle2 (von Tabelle1 Zeile 10 nach Tabelle2 Zeile 10) Kopiert werden. So das ich nachher in Tabelle2, 730 Zeilen habe mit Werten die nicht in der 2 Zeile der Tabelle 1 zu finden waren.
Ergebnis
Beispiel: A B C bis ?
Zeile 10: 5 7
Zeile 11: 6 8
bis
Zeile 730: 9 6 8 .... 5

Das gleich gilt für die Zeile 4 und 6, nur hier soll dann nach Tabelle3 bzw. Tabelle4 Kopiert werden.

Vielen Dank im Voraus
Es wäre wirklich nett wenn mir jemand bei diesem Problem helfen könnte.



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

Betreff
Datum
Anwender
Anzeige
Re: aussieben
17.10.2002 17:27:36
Bernd
Hallo,


ich glaube Dein Problem ist nur zu wissen wie Du die einzelnen Zellen in einer Schleife abfragen zu können.

Hier ein Beispiel:

Range("B10:AD730").Select
For Each Zelle In Selection
MsgBox Zelle
Next

Anstelle der Msgbox muß Du jetzt nur definieren, was passieren soll.

zum Beispiel:

Wert = ActiveCell.Value (Zelleninhalt wird der Variablen Wert zugewiesen.

Damit kannst Du dann, auf dem selben Weg wie oben, die Werte Vergleichen:
Range("A2:Q16").Select
For Each ZelleZeile2 In Selection
If ActiveCell.Value = Wert Then
'Nicht zu tun
Else
ActiveCell.copy
'Dann auf Tabelle 2 gehen und Wert einfügen.

End if
Next

Ich hoffe Dir ein wenig weitergeholfen zu haben.

Gruß

Bernd


Anzeige
Re: aussieben
18.10.2002 14:34:02
JPonde
Hallo Bernd

Vielen Dank für deine schnelle und prompte Hilfe, du hattest recht mit der Schleife. Aber das ist leider nicht alles. Ich bekomme es selbst mit deiner Hilfe nicht hin:

Sub aussieben()
Dim zelle As Variant
Dim zellezeile2 As Variant
Worksheets("Tabelle1").Range("A10:AD730").Select
For Each zelle In Selection
wert = ActiveCell.Value
Worksheets("Tabelle1").Range("A2:Q2").Select
For Each zellezeile2 In Selection
If ActiveCell.Value = wert Then
Else
ActiveCell.Copy _
Destination:=Worksheets("Tabelle2").Range("A10:AD730")
End If
Next zellezeile2
Next zelle
End Sub

Es wir nichts Kopiert, das Programm greift zwar auf die Daten zu aber es passiert nicht.
Vielleicht liegt es auch daran das ich ein Neuling bin, was das programmieren von Macros betrifft, ich habe versucht das Problem über Formeln zu lösen ab da wurde die Tabelle über 40 MB groß und Rechner ganz klein.

Könntest Du, oder jemand anders mir nochmals helfen.

Danke schön

MfG

John

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige