Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1348to1352
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA Filter in Userform
26.02.2014 20:37:26
rene
Guten Abend an alle.
Wäre wieder einmal für eure Unterstützung dankbar.Problemstellung ist folgende ,Ich möchte daten in einem tabellenblatt via Userform auswerten ,und danach ein ergebnis in einem Text feld in der Userform zurück geben.Ich versuche es mal zu erklären:-)
User soll in die Eingabefelder Account information eintragen,Radiobutten auswählen(oder ggf Drop down), notwendige informationen gemäß radiobutten auswahl eintragen.
Danach Prüfung ob Kombination aus Account und gewählter Radio Button(Eintrag) vorhanden ist wenn ja ,dann Ausgabe des Users in der User Form mit dem geringsten Euro Wert
Im Anhang findet ihr eine Beispiel Datei in der die Frage nochmals verdeutlicht wird.
https://www.herber.de/bbs/user/89443.xlsx
Vielen Dank für eue Hilfe

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
bitte Vorarbeit leisten ...
27.02.2014 09:16:59
Klaus
Hallo Rene,
du möchtest eine VBA-Lösung, postest aber eine xlsx? Aus Neugierde habe ich trotzdem reingeschaut und finde die Userform als eingefügtes Bild. Du kannst hier auch xlsm hochladen!
Wir helfen hier gerne, aber die Fleißarbeit (Userform erstellen, Buttons benennen usw.) darfst du gerne vorarbeiten.
Grüße,
Klaus M.vdT.
(noch offen)

AW: bitte Vorarbeit leisten ...
27.02.2014 10:39:53
rene
Hallo Klaus ,
Sorry mein Fehler anbei eine Datei mit der erwähnten Vorarbeit.

Die Datei https://www.herber.de/bbs/user/89449.xlsm wurde aus Datenschutzgründen gelöscht


Vielen Dank
rene

Anzeige
AW: bitte Vorarbeit leisten ...
27.02.2014 14:30:35
Klaus
Hallo Rene,
kannst du damit schon was anfangen? Auf die schnelle mit Schleifen gelöst, hätte noch Potential.
https://www.herber.de/bbs/user/89456.xlsm
Grüße,
Klaus M.vdT.

AW: bitte Vorarbeit leisten ...
27.02.2014 19:10:31
rene
Hallo Klaus
Vielen Dank das ist schon mal super ! Es funktioniert soweit ganz gut allerdings wird in manchen Fällen nicht der geringste EUR Wert sondern der höchste EUR Wert (auf den Namen bezogen) angezeigt
mehr als eine Person erfüllt die Suchkriterien zB. account / costcenter mit EUR 100,200,300 dann sollte die Person mit 100 angezeigt werden .
,woran könnte das liegen ? müssen die Daten in einer gewissen Sortierreihenfolge in dem Tabellenblatt stehen ? oder ist dieses egal?
wenn ich zB noch ein Label in die UF einfügen möchte (zB Beschreibung des Costcenters in Spalte F)wie müsste der code angepasst werden?
Vielen lieben Dank ,es ist immer wieder erstaunlich was ihr alles mit VBA anstellen könnt
Rene

Anzeige
AW: bitte Vorarbeit leisten ...
27.02.2014 22:00:35
rene
Hallo Klaus
Anbei nochmal die Beispieldatei mit ein paar Erläuterungen.

Die Datei https://www.herber.de/bbs/user/89466.xlsm wurde aus Datenschutzgründen gelöscht


Vielen Dank
rene

AW: bitte Vorarbeit leisten ...
28.02.2014 08:09:51
Klaus
Hi Rene,
mehr als eine Person erfüllt die Suchkriterien zB. account / costcenter mit EUR 100,200,300 dann sollte die Person mit 100 angezeigt werden .
gelöst (war ein Denkfehler von mir, fehlte nur eine Zeile)
wenn ich zB noch ein Label in die UF einfügen möchte (zB Beschreibung des Costcenters in Spalte F)wie müsste der code angepasst werden?
Die Antwort ist: furchtbar umständlich! Du müsstest in der Spalte einen worksheetfunction-Vergleich machen um die Zeile herauszufinden, dabei sicherstellen dass es keinen Fehler wegen Zahl/Text gibt, und dir den Wert aus einer anderen Spalte (die du irgendwo auch hinterlegen musst) ins Label schreiben, und den Vorgang bei jedem Change anstoßen.
Einfacher: Die Combobox gleich 2-Spaltig anlegen und die Label-Desc aus der Combobox selber holen.
Schaust du hier:
https://www.herber.de/bbs/user/89472.xlsm
Grüße,
Klaus M.vdT.

Anzeige
AW: bitte Vorarbeit leisten ...
28.02.2014 11:46:53
rene
Hallo Klaus
Vielen Dank ,nahezu perfekt :-) Besteht die Möglichkeit (den Laufzeitfehler 381 ,Eigenschaften List konnte nicht abgerufen werden ...)zu verhindern ?
Fehler tritt auf ,wenn (Sachkonto gefüllt ,radiobutton Costcenter gewählt ,Cost Center gefüllt)
wechselt man jetzt den Radiobutton zB auf WBS oder Internal Order ,kommt der Error .
Vielen Dank
Rene

AW: bitte Vorarbeit leisten ...
28.02.2014 12:03:32
Klaus
Hi Rene,
der von dir beschriebene Fehler tritt im Private Sub CB_Eintrag_Change() an dieser Stelle auf:
    With Me.CB_Eintrag
Me.Label_CostCenter.Caption = .List(.ListIndex, 1)
End With

Der Fehler ist, dass zu dem Eintrag "Sachkonto" in der neuen Kostenelement-Variante keine Einträge gefunden wurden - daher gibt es natürlich auch keinen zweiten Eintrag. Die quick-and-dirty Lösung wäre, den Fehler einfach zu ignorieren, aber mit "on error" fangen wir hier gar nicht erst an :-)
Tausch die Block gegen diesen aus:
        With Me.CB_Eintrag
If .ListCount = 0 Then
Me.Label_CostCenter.Caption = "Kein Eintrag gefunden"
Else
Me.Label_CostCenter.Caption = .List(.ListIndex, 1)
End If
End With

Wenn in der CB_Eintrag nichts steht, wird das Label mit "Kein Eintrag gefunden" gefüllt. Nur wenn in der CB etwas steht, wird der entsprechende Eintrag ins Label geschrieben. Dadurch tritt der Fehler nicht mehr auf.
Grüße,
Klaus M.vdT.

Anzeige
schönes Wochenende :-)
28.02.2014 13:57:34
Klaus
Hallo Rene,
ich geh jetzt ins Wochenende! Ob ich Montag dazu komme ins Forum zu schauen bezweifele ich eher ... wenn noch was ist, kannst du ja einen neuen Beitrag aufmachen.
Grüße,
Klaus M.vdT.

AW: schönes Wochenende :-)
28.02.2014 14:01:36
rene
Hallo Klaus
Hast du dir verdient ,nochmals vielen Dank.
Rene

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige