Supportnet / Forum / Tabellenkalkulation
mit Makro bestimmt Felder überschrieben
Frage
Moin zusammen,
ich habe folgendes Problem.
Ich soll 2 Tabellen über den Schlüssel Materialnummer ( jeweils in Spalte A) miteinander vergleichen. Dabei soll bei identischen Nummern die Spalten D-F der einen Tabelle die Spalten G-I der anderen Tabellen überschreiben. Aber nur in den Zeilen mit identischen Nummern.
Das ganze soll über ein Makro laufen.
Habe mir überlegt, dass ich erst über einen SVERWEIS die identischen Nummern herausfiltere.
Kann mir jemand mit diesem Problem helfen?
MFG
Tobias
Antwort 1 von Saarbauer
Hallo,
ich habe eine das gleiche Problem über ein Makro gelöst, mit dem Sverweis bekommst du das nicht gelöst.
Ich kann dir das Makro zur Verfügung stellen, müsste von dir angepasst werden.
Gruß
Helmut
ich habe eine das gleiche Problem über ein Makro gelöst, mit dem Sverweis bekommst du das nicht gelöst.
Ich kann dir das Makro zur Verfügung stellen, müsste von dir angepasst werden.
Gruß
Helmut
Antwort 2 von master-t
Das wäre nett von dir wenn du mir das Makro geben könntest.
Dann könnte ich es versuchen anzupassen.
MFG
Tobias
Dann könnte ich es versuchen anzupassen.
MFG
Tobias
Antwort 3 von Saarbauer
Hallo,
guck mal in den Pager
Gruß
Hlmut
guck mal in den Pager
Gruß
Hlmut
Antwort 4 von master-t
Hi,
hab dir gerade meine Adresse geschickt.
MFG
Tobias
hab dir gerade meine Adresse geschickt.
MFG
Tobias
Antwort 5 von cmkatz
Hallo,
Wär doch was, wenn ihr das Makro hier auch reinposten würdet, oder?
Dann hätten mehr Leute was davon.
;-)
Gruß
cmkatz
Wär doch was, wenn ihr das Makro hier auch reinposten würdet, oder?
Dann hätten mehr Leute was davon.
;-)
Gruß
cmkatz
Antwort 6 von Saarbauer
Hallo cmkatz,
hast Recht, habe nicht dran gedacht. Werde es morgen nachlifern, da ich das im Büro habe. Vielleicht hat @Master-t es auch schon fertig geändert und stellt es ein.
Gruß
Helmut
hast Recht, habe nicht dran gedacht. Werde es morgen nachlifern, da ich das im Büro habe. Vielleicht hat @Master-t es auch schon fertig geändert und stellt es ein.
Gruß
Helmut
Antwort 7 von Saarbauer
Hallo,
wie versprochen das Makro.
Sub Übertragen()
´
´ Übertragen Makro
´ Makro am 14.08.03 von Bauer aufgezeichnet
´
Dim planum As String, Index As String
Sheets("Planliste").Select ´Hauptliste
Range("a2").Select ´zurücksetzen auf erste Zeile
k = 2
Sheets("Fällige Pläne").Select ´Übertragungsliste
Range("a2").Select
While IsEmpty(ActiveCell) = False ´erste Schleife wird solange bis Leerzeile
Sheets("Fällige Pläne").Select
planum = ActiveCell.Value ´Plannummer auslesen
ActiveCell.Offset(0, 1).Select
Index = ActiveCell.Value ´Planindex auslesen
ActiveCell.Offset(0, 4).Select
Dat = ActiveCell.Value ´Plandatum auslesen
Rows(ActiveCell.Row()).Select
Sheets("Planliste").Select ´Wechesl in Hauptliste
Range(("a" & k)).Select
While IsEmpty(ActiveCell) = False ´Zweite Schleife wird solange bis Leerzeile
If ActiveCell.Value = planum Then ´Abfrage ob gleiche Plannummer
ActiveCell.Offset(0, 1).Select
If ActiveCell.Value = Index Then ´Abfrage ob gleiche Planindex
ActiveCell.Offset(0, 4).Select
If ActiveCell.Value = Dat Then ´Abfrage ob gleiche Plandatum
Rows(ActiveCell.Row()).Select
Sheets("Fällige Pläne").Select ´Wechesl in Liste Fällige Pläne
Selection.Copy
Sheets("Planliste").Select ´Wechesl in Hauptliste
ActiveSheet.Paste
k = ActiveCell.Row()
ActiveCell.Offset(5000, 0).Select ´Wechesl in Leerzeile
Else
ActiveCell.Offset(0, -5).Select ´Plan nicht gleich, Zurücksetzen auf 1. Spalte
End If
Else
ActiveCell.Offset(0, -1).Select ´Plan nicht gleich, Zurücksetzen auf 1. Spalte
End If
End If
ActiveCell.Offset(1, 0).Select ´nächste Zeile in Hauptliste
Wend ´Ende zweite Schleife
Sheets("Fällige Pläne").Select ´nächster Plan
ActiveCell.Offset(1, 0).Select ´nächste Zeile in Hauptliste
Wend ´Ende erste Schleife
Sheets("Planliste").Select
Range("a2").Select
Sheets("Fällige Pläne").Select
ActiveCell.Offset(1, 0).Select
Datum_Pläne
End Sub
Leider nicht so übersichtlich wie im Orginal.
Ich bitte gewisse Umständlichkeiten zu entschuldigen, da ich damals noch nicht so fit mit Makros war.
Gruß
Helmut
wie versprochen das Makro.
Sub Übertragen()
´
´ Übertragen Makro
´ Makro am 14.08.03 von Bauer aufgezeichnet
´
Dim planum As String, Index As String
Sheets("Planliste").Select ´Hauptliste
Range("a2").Select ´zurücksetzen auf erste Zeile
k = 2
Sheets("Fällige Pläne").Select ´Übertragungsliste
Range("a2").Select
While IsEmpty(ActiveCell) = False ´erste Schleife wird solange bis Leerzeile
Sheets("Fällige Pläne").Select
planum = ActiveCell.Value ´Plannummer auslesen
ActiveCell.Offset(0, 1).Select
Index = ActiveCell.Value ´Planindex auslesen
ActiveCell.Offset(0, 4).Select
Dat = ActiveCell.Value ´Plandatum auslesen
Rows(ActiveCell.Row()).Select
Sheets("Planliste").Select ´Wechesl in Hauptliste
Range(("a" & k)).Select
While IsEmpty(ActiveCell) = False ´Zweite Schleife wird solange bis Leerzeile
If ActiveCell.Value = planum Then ´Abfrage ob gleiche Plannummer
ActiveCell.Offset(0, 1).Select
If ActiveCell.Value = Index Then ´Abfrage ob gleiche Planindex
ActiveCell.Offset(0, 4).Select
If ActiveCell.Value = Dat Then ´Abfrage ob gleiche Plandatum
Rows(ActiveCell.Row()).Select
Sheets("Fällige Pläne").Select ´Wechesl in Liste Fällige Pläne
Selection.Copy
Sheets("Planliste").Select ´Wechesl in Hauptliste
ActiveSheet.Paste
k = ActiveCell.Row()
ActiveCell.Offset(5000, 0).Select ´Wechesl in Leerzeile
Else
ActiveCell.Offset(0, -5).Select ´Plan nicht gleich, Zurücksetzen auf 1. Spalte
End If
Else
ActiveCell.Offset(0, -1).Select ´Plan nicht gleich, Zurücksetzen auf 1. Spalte
End If
End If
ActiveCell.Offset(1, 0).Select ´nächste Zeile in Hauptliste
Wend ´Ende zweite Schleife
Sheets("Fällige Pläne").Select ´nächster Plan
ActiveCell.Offset(1, 0).Select ´nächste Zeile in Hauptliste
Wend ´Ende erste Schleife
Sheets("Planliste").Select
Range("a2").Select
Sheets("Fällige Pläne").Select
ActiveCell.Offset(1, 0).Select
Datum_Pläne
End Sub
Leider nicht so übersichtlich wie im Orginal.
Ich bitte gewisse Umständlichkeiten zu entschuldigen, da ich damals noch nicht so fit mit Makros war.
Gruß
Helmut
Antwort 8 von master-t
Moin zusammen.
Ich kam noch nicht dazu das Makro umzuschreiben.
Wenn ich es fertig haben sollte, stelle ich es rein.
MFG
Ich kam noch nicht dazu das Makro umzuschreiben.
Wenn ich es fertig haben sollte, stelle ich es rein.
MFG

