Hallo Ogzu,
ich hatte leider Probleme mit meinem Internetzugang, deshalb erst heute einige Hinweise, die aber die weiteren Schreiben berücksichtigen, soweit erforderlich.
Du musst als erstes feststellen, wie viele Zeilen deine Tabellen haben. Dann macht du zwei verschachtelte Schleifen, in denen du dir für jede Zeile in Marm2 die Zellen A und G merkst, um dann in der zweiten Schleife die A-Zellen verleichst und bei Übereinstimmung den Wert von G übernimmt. Die 2. Schleife kann abgebrochen werden, wenn eine Übereinstimmung gefunden wurde. Wenn die Artikelnumern sortiert sind, kann das Programm wie unten beschrieben beschleunigt werden. Empfehlung: Ausprobieren, ob Rechenzeit tolerabel.
Wichtig: Sichere vor dem ersten Test deine Daten!!!!
Sub Übertrag ()
Sheets("marm1").Select
Range("a1").End(xlDown).Activate
a1 = ActiveCell.Row 'Zeilenanzahl auf marm1
Sheets("marm2").Select
Range("a1").End(xlDown).Activate
a2 = ActiveCell.Row 'Zeilenanzahl auf marm2
For i = 1 To a2
c = Worksheets("marm2").Cells(i, 1) '1 für A, Artikelnummer
d = Worksheets("marm2").Cells(i, 7) '7 für G, prüfen, dass keine Spalte fehlt
For j = 1 To a1 'wenn nach Artikelnummer sortiert, kann 1durch i ersetzt werden
If Worksheets("marm1").Cells(j, 1) = c Then
Worksheets("marm1").Cells(j, 7) = d
Exit For
End If
Next j
Next i
End sub
Ich habe das Programm nicht getestet, sondern nur schnell heruntergeschrieben. E sollte aber funktionieren, sonst melde dich.
Holger
Oguz schrieb am 23.11.2007 08:50:27:
Huhu :)
Vielen Dank für eure hilfsbereitschaft.
1.) Die Dateien befinden sich in verschiedenen sheets.
2.) marm2 (ausgefüllte Spalte G) und marm1 (zu überschreibende Zeilen)
3.) Ja, jede Artikelnummer gibt es nur maximal einmal in jedem sheet.
4.) In beiden sheets befindet sich die Artikelnummer in der Spalte A
5.) Ja, es müsste theoretisch nur das Kastchen G der jeweiligen Zeile ersetzt werden.
6.) Ja, sind identisch
7.) Zeile 2
8.) komplette Leerzeilen? Nein!
9.) BI ist die letzte Spalte wo noch Daten vorhanden sind.
Gruss
...Oguz
Jürgen schrieb am 23.11.2007 02:55:52:
Hallo Oguz,
hab da auch noch ein paar Fragen. nur um's genau zu definieren.
1) Befinden sich Deine Tabellen in zwei verschiedenen Dateien, oder in zwei verschiedenen Tabellenblättern (sheets)?
2) Wie heißen die Dateien bzw. die Tabellenblätter in denen sich die Quelldaten (mit ausgefüllter Spalte G) bzw. die Zieldaten (zu überschreibender Bereich) befinden?
3) Gibt es die Artikelnummer für jeden Datensatz nur einmal?
4) In welcher Spalte befindet die Artikelnummer
5) Sind die Datensätze bis auf die Spalte "G" sonst komplett identisch?
6) Ist die Anordnung der Spalten in beiden Tabellen identisch?
7) In welcher Zeile beginnt der Datenbereich Deiner Tabellen? In Zeile 2?
8) Gibt es in Deinen Tabellen Leerzeilen?
9) Welche Spalte ist die letzte, in der Daten stehen?
Gruß Jürgen
|