Microsoft Excel

Herbers Excel/VBA-Archiv

Autofilter

Betrifft: Autofilter von: Freddie
Geschrieben am: 23.09.2014 18:59:55

Hallo Leutz,

nachdem ich das Internet erfolglos rauf und runter abgesucht habe, wende ich mich nun mit meinem Problem an euch:

Ich habe eine Excel-Tabelle mit rund 1600 Zeilen und pro Zeile 10 Spalten als "Datentabelle". Nun habe ich eine ständig wechselnde Tabelle ("Vergleich") mit diversen Datensätzen/ Zeilen (bis zu 33), aus der ich einen Wert (Spalteneintrag) mit der "Datentabelle" vergleiche und dann bei gefundenen, passenden Daten in der Tabelle "Vergleich" zwei ergänzende Spalteneinträge aus der "Datentabelle" eintrage.

Die momentane und bei mir auf der Arbeit praktizierte Lösung ist, dass ich die Vergleichstabelle ausgedruckt bekomme und dann am Rechner die "Datentabelle" öffne und mit dem Autofilter die einzelnen Werte markiere, dann mir das Ergebnis anzeigen lasse und die entsprechenden Werte von Hand in der Tabelle "Vergleich" ergänze.

Um nun die Sache etwas einfacher und praktikabler zu gestalten, habe ich nun mit dem Makrorekorder versucht ein Makro zu generieren, was auch soweit funktioniert, nur wenn ich nun die Werte nach denen ich suchen möchte ändere, bleiben die "alten Werte" im Makro eingetragen, und ich erhalte nur die Werte, die bei der Erstellung des Makros in der ersten Vergleichstabelle eingetragen waren. Ich habe den Makroeditor aufgerufen und der verweist tatsächlich auf genau diesen Wert aus der "Datentabelle".

Wie kann ich dieses Verhalten ändern, oder besser gefragt, wie mache ich es richtig?

Kann mir von Euch jemand helfen?

Vorab schon mal ein großes Danke!!!

Freddie

  

Betrifft: AW: Autofilter von: Adis
Geschrieben am: 23.09.2014 19:50:23

Hallo

am besten waere eine Beispiel Mappe nur mit Musterdaten damit man einmal
sehen kann wie das ganze aufgebaut ist. Mit dem Makro was bereits laeuft.
Dann hat man am schnellsten eine Vorstellung davon wie die Aufgabe aussieht.

Gruss Adis


  

Betrifft: AW: SVerweis von: Daniel
Geschrieben am: 23.09.2014 19:51:36

Schau dir mal den SVerweis an.
Diese Funktion könnte dein Problem lösen.
Gruß Daniel


  

Betrifft: noch nicht eindeutig genug dargelegt ... von: neopa C (paneo)
Geschrieben am: 24.09.2014 07:57:51

Hallo Freddi,

... um Lösungsmöglichkeit(en) aufzuzeigen.

Im einfachen Fall kann es sein, dass SVERWEIS() hilft, auf welches Dich David schon hingewiesen hat. Damit Du sowohl nach rechts als auch nach links vom Standort des Vergleichswertes den Suchwert finden kannst, setze die Kombination INDEX() und VERGLEICH() ein.
Mehr dazu sieh mal hier: http://www.online-excel.de/excel/singsel.php?f=39

Beide vorgenannten Lösungsmöglichkeiten setzen jedoch voraus, dass Du weißt oder einfach und eindeutig ermitteln kannst, in welcher Spalte Dein "Vergleichswert" zu suchen ist. Wenn der Vergleichswert sich jedoch in einer beliebigen Spalte befindet, hilft ein MATRIXformel. Dies auch dann, wenn der Vergleichswert mehr als einmal vorkommt.

Wie auch immer, Du solltest vielleicht einen kleinen Tabellenauszug darstellen und daran Deine Fragestellung präzisieren.


Gruß Werner
.. , - ...



  

Betrifft: AW: noch nicht eindeutig genug dargelegt ... von: Freddie
Geschrieben am: 24.09.2014 09:01:55

Hallo Leutz,

vielen Dank für Eure Hilfsbereitschaft!
Es war mir schon klar, dass meine Informationen etwas dürftig sein könnten, nur ist die Tabelle riesig groß und enthält u.a. auch Daten, die nicht für jeden bestimmt sind. Ich bin gerade dabei, die Tabelle sinnvoll zu schrumpfen und melde mich heute im Laufe des Tages damit. Ich habe mir eine maximale Erkältung eingefangen, bin zuhause und kann mich dadurch mal so richtig darum kümmern...

Vielen Dank !

Freddie


  

Betrifft: AW: noch nicht eindeutig genug dargelegt ... von: Freddie
Geschrieben am: 24.09.2014 12:29:35

Sooo,

ich habe jetzt mal die Datei etwas geschrumpft und auf die wichtigsten Daten beschränkt, die Tabelle ist hier:

https://www.herber.de/bbs/user/92785.xls

Leider habe ich jetzt festgestellt, dass ich hier bei mir auf dem Recner zuhause Excle 2007 habe, das Ganze aber unter Excel 2010 laufen sollte.

In dem Tabellenblatt "Datentabelle" stehen die Daten, auf die sich alles bezieht (ich habe nur ein paar Spalten entfernt), im Tabellenblatt "Vergleich" wird aus SAP eine Tabelle generiert und zwischen der Zeile 3 und 35 eingefügt.
Nun sollte man mit dem Steuerfeld "Import 1" im Tabellenblatt "Vergleich" in der Spalte "CODE" und "GEFKL" die in den betreffenden Spalten im Tabellenblatt "Datentabelle" hinterlegten Werte auslesen und im Tabellenblatt "Vergleich" in den betreffenden Spalten eintragen können.
Nach erfolgreichem Eintrag sollte die 2te, usw. Zeile folgen, bis Zeile 35, entweder mit einem weiteren Makro, oder auch alles auf einmal mit einem Gesamtbefehl.

Ich habe mal für die erste Zeile ein Makro mit dem Rekorder aufgenommen und dem Steuerelement "Import 1" zugeordnet. Sobald ich nun das Steuerelement anklicke, werden die betreffenden Werte in der Datentabelle gesucht und auch ordnungsgemäß eingetragen.
Wenn ich nun im Feld "D3" einen anderen (gültigen) Wert eintrage, z.B. den aus "D10" hochkopiere und die Inhalte von "E3" und "F3" lösche und danach das Steuerfeld anklicke, wird wieder der Wert vom vorhergehenden Eintrag angezeigt.

Es gilt zu noch beachten, dass die Tabelle "Vergleich" mit der Anzahl der Zeilen zwischen 1 und 33 variieren kann, etwaige systembedingte Fehlermeldungen sollten automatisch ausgeblendet werden!

Danke für eure Bemühungen!

Freddie


  

Betrifft: AW: noch nicht eindeutig genug dargelegt ... von: Freddie
Geschrieben am: 24.09.2014 12:37:01

Hallo Leutz,

in meiner Beispieltabelle hat sich ein kleiner Fehler eingeschlichen:
im Tabellenblatt "Vergleich" muss die Zeile 1 und die Spalte A gelöscht werden, sonst klappts nicht mit dem Makro. Ich hatte die Spalte und Zeile nach dem Erstellen des Makros wegen der Übersichtlichkeit eingefügt und nicht mehr drangedacht, dass es die Formatierung durcheinanderbringt!
Sorry!

Freddie


  

Betrifft: in dem Fall reicht eine SVWERWEIS() - Formel ... von: neopa C (paneo)
Geschrieben am: 24.09.2014 13:42:44

Hallo Freddie,


... in D2: =WENNFEHLER(SVERWEIS($C2;Datentabelle!$B:$D;SPALTE(B1););"") und diese Formel nach rechts und unten ziehend kopieren.


Gruß Werner
.. , - ...


  

Betrifft: AW: noch nicht eindeutig genug dargelegt ... von: Freddie
Geschrieben am: 24.09.2014 14:00:45

Hallo Werner,

VIIIEEELEN DANK!!!

Ich habe es gerade ausprobiert, es funktioniert. Jetzt muss ich nur noch nächste Woche ins Geschäft kommen und das ganze dort mit SAP verschachteln, wenns dann immer noch funzt (woran ich nicht zweifle!) spar ich mir einen Haufen Schreibkram....

Nochmals Danke!!!

Freddie


 

Beiträge aus den Excel-Beispielen zum Thema "Autofilter"