Besten Preis ermitteln

Liebe/-r Experte/-in,

ich möchte von unterschiedlichen Lieferanten den billigsten Artikel aus den unterschiedlichen Preislisten herausfinden. Ist dies bei z.B. gleicher Artikelnummer möglich?

Falls ja würde ich mich sehr über eine Antwort freuen.

Vielen Dank.

Gruß Jörg

Hallo Jörg,

möglich ist alles, aber dafür müsste ich etwas mehr Info’s bekommen… z.B. ob es eine oder mehrere Dokumente/Tabellen sind, wie die Tabellen aufgebaut sind und vor allem, wie Du es versuchen willst.
Wenn es eine Tabelle oder zumindest ein Dokument ist, geht es mit der MIN-Funktion.

Grundsätzlich würde ich aber mit VBA den Vergleich angehen, weil es dadurch leichter anzupassen ist, wenn sich an den Tabellen was ändert.

Wie gesagt, wenn man das Problem mit genauen Worten beschreibt (Dein Job), ist das meist auch schon die Lösung (mein Job) :smile:

Grüße,
Burkhard

Hallo Burkhard,

ich danke für deine schnelle Nachricht. Es handelt sich um mindestens zwei Tabellenblätter (Preislisten zweier Anbieter) in einer Exceldatei. Die Spalten sind Artikenummer, Artikelbezeichnung und Preis und eventuell eine Mindestabnahme als Pflicht (kann sein).

Über VBA habe ich leider NOCH keine Kenntnisse, wäre aber sicherlich interessant für.

Ich hoffe, ich konnte dir ausreichende Angaben liefern. Falls nicht, würde ich dir gern eine Mustertabelle per email, oder Skype senden. Solltest du über Skype auch vertreten sein, mein Skypename lautet: j.prellberg

Vielen Dank und viele Grüße

Jörg

OK… versuchen wir es mal :smile:

Annahme:
Es gibt nur ein Dokument
Tabelle1 ist die Liste von Händler 1 (H1)
Tabelle2 ist die Liste von Händler 2 (H2)
Tabelle3 Liste des günstigsten Anbieters

jeweils in Spalte A stehen die Artikelnummern
jeweils in Spalte B stehen die Preise
jeweils in Zeile 1 stehen Überschriften

Spalte A ist in Tabelle1 und Tabelle2 nicht zwingend gleich (unterschiedliche Artikel, ergo unterschiedliche Einträge)

Lösungsansatz:
Du musst jetzt also on Tabelle3 folgendes einfügen
in Zelle A2 kommt

=Tabelle1!A2

kopier die Zelle A2 nach unten.
Du bekommst die Artikelnummern aus Tabelle1

In Zelle B2 kommt

=Tabelle1!B2

kopier die Zelle B2 nach unten.
Du bekommst die Preise aus Tabelle1

In Zelle C2 kommt

=WENN(ISTFEHLER(SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH));;SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH))

kopier die Zelle C2 nach unten.
Du bekommst die Preise aus Tabelle2, wenn der Artikel in Tabelle2 auch vorhanden ist, ansonsten bekommst Du eine 0

In Zelle D2 kommt

=WENN(C20;WENN(MIN(B2;C2)=B2;"H1";"H2");"H1")

kopier die Zelle D2 nach unten.
Jetzt gibt es nur 2 Möglichkeiten

  1. Wenn also in Tabelle2 der Artikel auch vorhanden ist (Ergebnis0), dann bekommst Du den Händler mit dem nidrigeren Preis.

  2. Der Artikel ist nicht in Tabelle2 vorhanden (Ergebnis=0), dann bekommst Du den Händler aus Tabelle1

Anm1:
Die Formeln sehen etwas wild aus, da ich nicht davon ausgehe, das jede Artikelnummer aus Tabelle1 auch in Tabelle2 (und umgekehrt) vorkommt.

… wenn man jetzt noch Stückzahlen berücksichtigen will (was gehen würde), dann werden die Formeln in Spalte B und C ähnlich lesbar, wie die in Spalte D :smile:

und wenn man dann noch den echten Wahnsinn will, dann kann man auch alles in eine Zelle packen.

Anm2:
Ich würde mir auf jeden Fall mit einer bedingten Foramtierung anzeigen lassen, wenn Fall2 eintritt…

Probier es einfach mal aus und schick ein kuzes feedback,
Burkhard

Nachtrag:
alles in einer Zelle sieht so aus :

=WENN(WENN(ISTFEHLER(SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH));;SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH))0;WENN(MIN(Tabelle1!B2;WENN(ISTFEHLER(SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH));;SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH)))Tabelle1!B2;"T1";"T2");"T1")

nicht wirklich schön zu lesen :smile:

Hallo Jörg,

Also, wenn du mit unterschiedlichen Tabellen (Preislisten) arbeitest, dann geht das nicht über eine einfache Ecxelfunktion. Dann musst du dir ein Makro schreiben.
Wenn du alle Listen auf einem Blatt hast und die Spalten gleich geordnet sind, dann kannst du über die Funktion Daten -> Filter -> AutoFilter nach Artikelnummer sortieren.
So kannst du auf jeden Fall ein Ergebnis bekommen, aber, wenn du den Wert automatisch abgreifen und damit weiter arbeiten willst, kommst du um ein Makro nicht herum.

Hoffe dir geholfen zu haben. Falls du nähere Infos zu AutoFilter brauchst, meld dich ruhig noch mal.

Gruß
Anne

Hallo Anne,

vielen dank für deine Antwort. Leider habe ich mit Makros noch keine Erfahrungen sammeln dürfen.

Meine Datei besteht aus zwei Tabellenblättern. Tabellenblatt 1 = 1. Händler, Tabellenblatt zwei = 2. Händler.

Beide tabellen sind gleich strukturiert, Spalte A Artikelnummer, B = Preise, C = Artikelbezeichnung, D = Mindestabnahme. Die Artikelnummern weichen teilweise bei den Händlern ab. Mindestabnahme sollte eine Kann Bestimmung sein, wäre supi, wenn möglich.

Ich freu mich über eine Antwort.

Viele Grüße

Jörg

Hallo Burkhard,

nochmals vielen Dank für deine Bemühungen. Ich habe jetzt eine Muster-Datei erstellt. Diese sieht folgender maßen aus: Bestehend aus drei tabellenblätter (Lieferant 1, Lieferant 2, günstigster Anbieter).

Tabellenblätter 1 und 2 sind fast gleich, Zeile 1 befinden sich die Spaltenüberschriften (Artikelnummer, Preise, Artikel-Bezeichnung, Mindestabnahme). Unterschiede befinden sich in Preise sowie Mindestabnahme.

Das Tabellenblatt 3 (guenstigster Anbieter) sieht folgender maßen aus:

Spalte A1 = Artikelnummer
von A2-A25

=Tabelle1!A2

Spalte B1 = Preise
von B2-B25

=Tabelle1!B2

Spalte C1 = Artikelbezeichnung
von C2-C25

=WENN(ISTFEHLER(SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH));;SVERWEIS($A2;Tabelle2!$A$2:blush:B$8;2;FALSCH))

Spalte D1 = Mindestabnahme
von D2-D25

=WENN(C20;WENN(MIN(B2;C2)=B2;"H1";"H2");"H1")

Bin ich bis dahin richtig?
Muss

 zum Anfang der Formel stehen und 

am Ende der Formel?

Falls ja wie bekomme ich die tabelle aktiviert?

Vielen Dank

VG Jörg

Hallo Jörg,
Das pre muss weg, das gehört zu dieser HTML-Seite, nicht zu EXCEL. In EXCEL fangen Formeln immer mit = an.

Bis dahin,
Burkhard

Hallo Burkhard,

ich danke dir, habe das pre vorn und hinten entfernt, aber ich habe ja drei tabellenblätter in meiner Datei, wenn ich jedoch die Formel mit der Entertaste ausführen möchte, frag er mich, von wo er die daten nehmen soll, da wähle ich die gleiche Datei aus, aber ich werde erneut gefragt, von welchem Tabellenblatt, da kann ich nur ein Tabellenblatt auswählen

Um eine Auswahl zwischen den Preisen von Tabellenblatt 1 und Tabellenblatt 2 treffen zu können, müssen ja beide Tabellenblätter wählbar sein.

Oder!!!

Ich muss beide tabellen auf ein tabellenblatt kopieren.

Vielleicht schickst du mir mal eine Emailadresse von dir, oder wenn möglich können wir uns das gemeinsam mal kurz über teamViewer anschauen?

Was hälst davon?

Gruß

Jörg

Hallo Jörg,

Ich muss an dieser Stelle mal erklären, das ich meist vom Handy aus antworte, da ich viel auf Reisen bin. Ich kann mich zwar mit Teamviewer einloggen, aber ob ich wirklich alles sehe :smile:

Was Deine Fragen angeht, nein, Du musst die Daten nicht in eine Tabelle kopieren… dann funktionieren die Formeln nicht mehr. Die Namen der Tabellen sind wichtig, also Tabelle1 und Tabelle2… der Nameder Tabelle für Deine Formeln spielt keine Rolle.

Lass uns mal eben eine der einfachen Formeln abklären :
=Tabelle1!A2

„=“ bedeutet für Excel, das eine Formel kommt
„Tabelle1“ ist der Name der Tabelle, der auf der Registerkarte steht
„!“ Ist das Zeichen für Excel, das der Tabellenname endet und eine Zelle folgt
„A2“ bedeutet Zelle A2
Zusammen sagst Du also Excel, Zeige mir den Wert aus Tabelle1, Zelle A2.

Was Du schreibst, deutet darauf hin, das Deine Tabellen anders heißen.

Wenn Du willst, dann kannst Du mir auch ein Musster zuschicken und ich schau es mir dann mal auf einem PC an… sag mir dann aber vorher, welches Excel Du benutzt (97, 2003,2007 oder 2011?) damit ich nicht das Format zerschiße.

Grüße,
Burkhard
[email protected]

Hallo Burkhard,

ich danke dir, würde dir die Datei gern mailen, ich nutze Office 2010, kann es dir also in eine jüngere Version umwandeln.

Ich danke dir

Viele Grüße

Jörg

Hallo Jörg!

Also, so ganz weiß ich leider nicht, was du willst.
Wenn ich dich richtig verstehe, möchtest du zwei Tabellen jeweils nach einer bestimmten Artikelnummer durchsuchen.
Also, dafür würde ich auf einem anderen Tabellenblatt mit der Formel SVERWEIS arbeiten.

In Zelle A1 gibst du die Artikelnummer ein, die du finden willst.
In Zelle B1 und B2 gibst du jeweils die Formel ein:
=SVERWEIS(A1;Matrix;Rückgabespalte;FALSCH)
Matrix sind die Tabellen auf den beiden Blättern. Rückgabespalte ist die Spalte, die du als Antwort haben willst.

Wenn du also zu der Artikelnummer den Preis haben willst, gibst du ein =SVERWEIS(A1;Tabelle1!A1:A100;2;FALSCH),
wenn du die Artikelbezeichnung willst, dann statt 2 eben 3 und so weiter.
Das FALSCH musst du eingeben, wenn - wie ich annehme - die Artikelnummern nicht aufsteigend geordnet sind.
Ist die gesuchte Artikelnummer nicht in der Liste bekommst du als Ergebnis #NV.

Am besten benutzt du am Anfang die Funtion „Formel einfügen“ (findest du unter Einfügen -> Funktion…)

Hoffe, ich habe dein Problem richtig verstanden.

Gruß
Anne