Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Doppelte Einträge Suchen und zusammenfassen und nebeneiander in neue Tabelle einfügen





Frage

Hallo, Ich brauch Eure Hilfe!!!! Ich hab eine Tabelle wo in Spalt A die Artikelnummer steht in Spalte B der Hersteller und in Spalte C Einkaufspreis und in Spalte D den Verkaufspreis. Alles steht untereinander. Da ein Artikel von unterschiedlichen Herstellern bezogen werden kann, sind auch in Spalte A die Artikelnummern doppelt, in Spalte B die Hersteller aber Unterschiedlich sowie Spalte C die Einkaufspreise. Jetzt mein Problem, da diese Artikelliste aus einer Datenbank kommt und diese Tabelle so aktualisiert wird möchte ich gerne zu Üb ersicht eine neue Tabelle erstellen. Spalte A der neuen Tabelle soll die Artikelnummer sein, Spalte B Hersteller 1, Spalte C Einkaufspreis Hersteller 1, (wenn vorhanden) Spalte D Hersteller 2 und Spalte E Einakufspreis Hersteller 2. In Spalte H sollte dann der VK-Preis stehen (der ist pro Artikel gleich). Ist das möglich irgenwie, das in der Tabelle 1 wenn Artikel doppelt genannt werden, das die in der obigen Form in die neue Tabelle eingefügt werden??? So das nur eine Zeile pro Artikelnummer dasteht. Ich dank Euch für Eure Mühe!!! Gruß Elahmplo

Antwort 1 von coros

Hi Elahmplo,

kopiere nachfolgendes Makro in ein StandardModul und starte es über eine Befehlsschaltfläche.

Option Explicit

Sub Duplikate_finden_und_auslagern()
Dim Zeile As Integer, Bereich As Integer
Application.ScreenUpdating = False
With Worksheets.Add
.Name = "Doppelte Artikelnummern"
End With
Sheets("Tabelle1").Activate
Bereich = Cells(Cells.Rows.Count, 1).End(xlUp).Row
For Zeile = Bereich To 1 Step -1
If WorksheetFunction.CountIf(Columns(1), Cells(Zeile, 1)) > 1 Then
Rows(Zeile).Copy _
Sheets("Doppelte Artikelnummern").Cells(Sheets("Doppelte Artikelnummern").Range("A65536").End(xlUp).Offset(1, 0).Row, 1)
Rows(Zeile).Delete
End If
Next Zeile
End Sub


Mit dem Makro wird in Blatt "Tabelle1" die Spalte A nach doppelten Einträgen durchsucht. Wenn gefunden, wird die gesamte Zeile in ein neu angelegtes Tabellenblatt mit dem Namen "Doppelte Artikelnummern" kopiert und in dem Blatt "Tabelle1" wird die Zeile gelöscht.

Ich hoffe, Du hast das so gemeint. Bei Fragen melde Dich.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von Elhamplo

Hi Coros,,

danke für Deine Hilfe.

Ich meinte das so ähnlich.

Bei doppelten Einträge sollten nicht aus der Tabelle herausgefilter werden, sondern die Spalten B,C und D der Doppelnennungen sollten beim ersten genannten (der doppelten Einträge) nebeneinander stehen, zusammengefast werden:

1256 KW 15 22
1256 CD 16 22
1256 AA 17 22


1256 KW 15 22 CD 16 22 AA 17 22

Und wenn nur einmal genannt dann einfach so übernehmen

2255 CC 17 25

Vielen Dank!!!!

Gruß

Elhamplo

Antwort 3 von coros

Hi Elhamplo,

sofern ich es jetzt richtig verstanden habe, sollte das Makro nun das machen, was Du Dir vorgestellt hast. Kopiere es in ein StandardModul.

 Option Explicit

Sub Duplikate_finden_und_auslagern()
Dim iRow1 As Integer, iRow As Integer, iRow_Duplikat As Integer, _
iCol As Integer
Application.ScreenUpdating = False
iRow1 = 2
For iRow = 2 To Range("A65536").End(xlUp).Row
iRow1 = iRow1 + 1
For iRow_Duplikat = iRow1 To Range("A65536").End(xlUp).Row
If Cells(iRow, 1) = Cells(iRow_Duplikat, 1) Then
iCol = Range("IV" & iRow).End(xlToLeft).Column
Range(Cells(iRow_Duplikat, 2), Cells(iRow_Duplikat, 3)).Copy
Cells(iRow, iCol).Insert Shift:=xlToRight
Rows(iRow_Duplikat).Delete
End If
Next
Next
End Sub 


Bei dem Makro wird Spalte A von unten nach oben nach Duplikate durchsucht. Wurde ein doppelter Wert gefunden, werden die Werte aus Spalte B und C in die erste freie Spalte des gefundenen Begriffs kopiert und das Duplikat wird gelöscht.

Teste das mal an einer Kopie Deiner Daten. Melde Dich bitte, wenn es nicht so ist, wie Du es Dir dachtest.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 4 von Elhamplo

Hi Coros,

Super, das ist es schon fast!!

Das Problem jetzt ist, das nicht alle Duplikate nebeneiander stehen. Hab noch doppelte dazwischen mit der gleichen Artikelnummer. Ist das Einfügen begenzt???

Gruß

Elhamplo

Antwort 5 von Elhamplo

Hallo,

Noch eine Frag, kann man das so machen das alle drei Positionen fü ein Artikel nebeneiander stehen? Z.B

1256 KW 15 22
1256 CD 16 22
1256 AA 17 22

156 KW 15 22 CD 16 22 AA 17 22

Vielen, Vielen Dank füre Deine Mühe!1111!!

Gruß

Elhamplo

Antwort 6 von Elhamplo

Hallo Coros

hab das nochmal ausprobiert. Hab die gleichen Formate genommen, aber ich hab immer noch doppelte die Untereinanderstehen.

Ich hab keine Ahnung. Hilfeeeeeeee!!!!!!

Gruß

Elhamplo

Antwort 7 von coros

Hi Elhamplo,

sorry, hatte gar nicht gesehen, dass Du heute morgen auf meine Lösung geantwortet hast.

Nein, das Einfügen ist eigentlich nicht begrenzt. Einzige Ausnahme, es würden mehr als 256 Spalten benötigt.
Eigentlich sollten alle Duplikate gefunden werden. Hast Du die Möglichkeit Deine Datei mal ins Netzt zu stellen oder mir per Mail (Mailadresse findest Du auf meiner Homepage u.a. im Impress... zukommen zu lassen? Dann könnte man schauen, woran es liegt, dass nicht alle doppelten Werte gefunden werden.


MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.