Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1380to1384
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

Vergleichstabelle mit Makro

Vergleichstabelle mit Makro
17.09.2014 10:50:18
Sebastian
Hallo!
Ich habe folgendes Problem:
Ich möchte Datensätze miteinander vergleichen, und dazu bestimme Zeilen aus aus zwei Tabellenblättern per Makro rauskopieren und in ein Tabellenblatt drei in bestimmte Zeilen einfügen lassen. Soweit so gut. Ich habe dazu versucht folgendes Makro zu schreiben:
Sub Daten2013()
'Variablen Deklaration
Dim Z1 As Integer
Dim Z2 As Integer
Dim Ende As Integer
Dim Ende2 As Integer
Dim Daten2013 As Variant
Dim Daten1017 As Variant
Dim Daten1029 As Variant
Dim Daten7020 As Variant
Dim Daten7060 As Variant
Dim Daten7100 As Variant
Dim Daten7140 As Variant
Dim Daten7220 As Variant
Dim Daten7300 As Variant
Dim Daten7305 As Variant
Dim Daten7380 As Variant
Dim Daten7400 As Variant
Dim Daten7500 As Variant
Dim Daten7520 As Variant
Dim Daten7700 As Variant
Dim Daten7720 As Variant
Dim Daten7740 As Variant
Dim Daten7780 As Variant
Dim Daten7805 As Variant
Dim Daten7810 As Variant
Dim Daten7830 As Variant
Dim Daten7840 As Variant
Dim Daten7850 As Variant
Dim Daten7860 As Variant
Dim Name As Variant
Dim Konto1 As Variant
Dim Konto2 As Variant
'Setzen der Startwerte
Z1 = 2
Z2 = 3
Ende = 600
Ende2 = 600
'Tabelle2 Inhalt Spalte B, C, D löschen
Worksheets("Vergleich").Range("B3:B600").Delete
Worksheets("Vergleich").Range("C3:C600").Delete
Worksheets("Vergleich").Range("F3:F600").Delete
Worksheets("Vergleich").Range("I3:I600").Delete
Worksheets("Vergleich").Range("L3:L600").Delete
Worksheets("Vergleich").Range("O3:O600").Delete
Worksheets("Vergleich").Range("R3:R600").Delete
Worksheets("Vergleich").Range("U3:U600").Delete
Worksheets("Vergleich").Range("X3:X600").Delete
Worksheets("Vergleich").Range("AA3:AA600").Delete
Worksheets("Vergleich").Range("AD3:AD600").Delete
Worksheets("Vergleich").Range("AG3:AG600").Delete
Worksheets("Vergleich").Range("AJ3:AJ600").Delete
Worksheets("Vergleich").Range("AM3:AM600").Delete
Worksheets("Vergleich").Range("AP3:AP600").Delete
Worksheets("Vergleich").Range("AS3:AS600").Delete
Worksheets("Vergleich").Range("AV3:AV600").Delete
Worksheets("Vergleich").Range("AY3:AY600").Delete
Worksheets("Vergleich").Range("BB3:BB600").Delete
Worksheets("Vergleich").Range("BE3:BE600").Delete
Worksheets("Vergleich").Range("BH3:BH600").Delete
Worksheets("Vergleich").Range("BK3:BK600").Delete
Worksheets("Vergleich").Range("BN3:BN600").Delete
Worksheets("Vergleich").Range("BQ3:BQ600").Delete
Worksheets("Vergleich").Range("BT3:BT600").Delete
Worksheets("Vergleich").Range("BW3:BW600").Delete
' Tabelle1 Spalte A Suchen ersetzen " " durch ""
Worksheets("Summen2013").Range("A:A").Replace What:=" ", Replacement:=""
'Schleifen sortieren & zuordnen der Werte
Do While Z1 

Sub Daten2014()
'Variablen Deklaration
Dim Z3 As Integer
Dim Z4 As Integer
Dim Ende As Integer
Dim Ende2 As Integer
Dim Daten2014 As Variant
Dim Daten10172 As Variant
Dim Daten10202 As Variant
Dim Daten10292 As Variant
Dim Daten70202 As Variant
Dim Daten70402 As Variant
Dim Daten70602 As Variant
Dim Daten71002 As Variant
Dim Daten71402 As Variant
Dim Daten72202 As Variant
Dim Daten73052 As Variant
Dim Daten73802 As Variant
Dim Daten74002 As Variant
Dim Daten75002 As Variant
Dim Daten75202 As Variant
Dim Daten77002 As Variant
Dim Daten77202 As Variant
Dim Daten77402 As Variant
Dim Daten78052 As Variant
Dim Daten78102 As Variant
Dim Daten78302 As Variant
Dim Daten78402 As Variant
Dim Daten78502 As Variant
Dim Daten78602 As Variant
Dim Name2 As Variant
Dim Konto3 As Variant
Dim Konto4 As Variant
'Setzen der Startwerte
Z3 = 2
Z4 = 3
Ende = 600
Ende2 = 600
'Worksheets("Vergleich").Range("B3:B600").Delete
Worksheets("Vergleich").Range("D3:D600").Delete
Worksheets("Vergleich").Range("G3:G600").Delete
Worksheets("Vergleich").Range("J3:J600").Delete
Worksheets("Vergleich").Range("M3:M600").Delete
Worksheets("Vergleich").Range("P3:P600").Delete
Worksheets("Vergleich").Range("S3:S600").Delete
Worksheets("Vergleich").Range("V3:V600").Delete
Worksheets("Vergleich").Range("Y3:Y600").Delete
Worksheets("Vergleich").Range("AB3:AB600").Delete
Worksheets("Vergleich").Range("AE3:AE600").Delete
Worksheets("Vergleich").Range("AH3:AH600").Delete
Worksheets("Vergleich").Range("AN3:AN600").Delete
Worksheets("Vergleich").Range("AQ3:AQ600").Delete
Worksheets("Vergleich").Range("AT3:AT600").Delete
Worksheets("Vergleich").Range("AW3:AW600").Delete
Worksheets("Vergleich").Range("AZ3:AZ600").Delete
Worksheets("Vergleich").Range("BC3:BC600").Delete
Worksheets("Vergleich").Range("BF3:BF600").Delete
Worksheets("Vergleich").Range("BI3:BI600").Delete
Worksheets("Vergleich").Range("BO3:BO600").Delete
Worksheets("Vergleich").Range("BR3:BR600").Delete
Worksheets("Vergleich").Range("BU3:BU600").Delete
Worksheets("Vergleich").Range("BX3:BX600").Delete
Worksheets("Vergleich").Range("BZ3:BZ600").Delete
Worksheets("Vergleich").Range("CD3:CD600").Delete
' Tabelle1 Spalte A Suchen ersetzen " " durch ""
Worksheets("Summen2014").Range("A:A").Replace What:=" ", Replacement:=""
'Schleifen sortieren & zuordnen der Werte
Do While Z3 
Das erste Makro ist für die Daten aus 2013 und das Zweite für die vom Folgejahr.
Mein Problem: jedes Makro für sich selber funktioniert, aber wenn ich Makro 2 direkt nach Makro 1 laufen lasse, verschieben sich in dem Tabellenblatt drei ("Vergleich") die Werte vom Makro 1 in den Spalten.
Hat dafür jemand eine Lösung, oder einen Denkanstoß?
Vielen Dank im Voraus!

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

Betreff
Datum
Anwender
Anzeige
Weder - noch
17.09.2014 17:36:36
Frank
Hallo Sebastian,
der Betreff bezieht sich auf Deine abschliessende Frage.
Das Ganze lässt sich wohl nur beantworten, wenn Du eine Beispieldatei hochlädst. Hilfreich ist bei Code auch immer, wenn auskommentierte Zeilen gelöscht werden (der IF-Block in beiden Makros). Den Umweg über die Variablen (und deren Deklaration) kannst Du Dir übrigens sparen, indem Du die Zuweisung direkt machst
Worksheets("Vergleich").Range("CD" & Z4 + 1) = Worksheets("Summen2014").Range("BB" & Z3).Value
Grüsse,
Frank

AW: Weder - noch
17.09.2014 20:29:57
Adis
Hallo
höfliche Frage: Warum so aufwendig kopieren?
Man kann Tabellen direkt miteinander vergleichen.
Dazu muss man den Bereich wissen und die Kriterien
Beispiel Datei ware sehr hilfreich.
Gruss Adis
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige