Daten in Userform einlesen
#1
Hallo liebe Excel-Kollegen,
ich weiß es ist kurz vor Weihnachten und ihr seit alle im Stress aber vllt kann mir ja jemand helfen.
Ich probiere jetzt schon eine Weile daran rum aber komme einfach nicht auf die Lösung.

Die Aufgabe: Ein ExcelSheet welches als Datenbank dient soll mittels Userform + ElanNr. (AuftragsNr.) durchsucht werden und alle dazugehörigen Daten in den jewaligen Textfelder (Userform) ausgeben.

Ich lade mal die Testdatei hoch. Wundert euch aber nicht das ich schon etwas vorgearbeitet habe. In der Datei habe ich im Sheet Datensätze die Einzelnen Spalten welche benötigt werden mit Gelb und Grün makiert.

Gelb ist die ELANNr. nach der auch gesucht werden soll und sollte diese gefunden werden sollen alle Grünmakierten in den Textboxen in der Userform ausgegeben werden. Sollte diese nicht gefunden werden reicht ne MsgBox Elan Nr. nicht vorhanden me hide und wieder userform show

Ich danke euch schon mal für eure Hilfe und ich hoffe das mir da jemand helfen kann meine Denkblockade zu durchbrechen.

Ansonsten frohes Fest.

Gruß Philipp


Angehängte Dateien
.xlsm   Test_Master - Kopie.xlsm (Größe: 1,31 MB / Downloads: 10)
Top
#2
Hallo Philipp

ich habe mal eine ganz höfliche Praxisfrage, bitte nicht böse sein.  Wie gut ist dein Gedaechtnis??

Ich sehe in der Beispieldatei  2.565 EAN Nr. und frage mich erstaunt  -  Hast du die Nummern alle im Kopf???
Bei der Datenmenge die gesuchte Nummer in eine TextBox eingeben, halte ich -rein zeitlich- für einen Witz.
Selbst alle Nummern in eine ComboBox oder ein Listenfeld packen ist für mich von der Menge her unpraktisch!!

Mir fiel auf das alle EAN mit der Nummer 22250 anfangen, die könnte man direkt mal ignorieren. Nur die Nummer dahinter zaehlt.
Daten suchen wenn man die richtige EAN gefunden hat dürfte das kleiner Problem sein. Aber das EAN Problem sinnvoll zu lösen ist m.E. knifflig ...
Auf jeden Fall ist das keine  5 Minuten Aufgabe, da muss man mal in Ruhe drüber schlafen.  

Vielleicht hat da noch jemand eine schlaue Idee ...    Bis dahin ein frohes Weihnachtsfest.

mfg  Gast 123
Top
#3
Hey. Dein Denkansatz ist richtig ja. Ich muss viele Akten drucharbeiten und es ist nichts digital. Also muss ich jede ELAN Nr. eingeben und mir anzeigen lassen ob man die Daten zu findet. 

Dann "wie schon programmiert" schreibe ich die Userform in ein neues Sheet um.
Also am Ende muss ich jetzt die Daten aus dem Daten satz durchsuchen lassen und wenn gefunden anzeigen lassen in der userform.

Deutschland wird 2050 dann auch mal digital.

Gruß Leute
Top
#4
Hallo

wenn es tatsächlich nur um die Userform zu füllen geht...
da bietet sich dann die .Find-Methode an


MfG Tom
Top
#5
Hallo

ups... sehe grad dass du dich ja schon daran versucht hast

hast es aber scheinbar nicht verstanden
bei If not rng is Nothing hast du was gefunden

Code:
Private Sub CommandButton5_Click()
   Dim rng As Range
   With Sheets("Datensatz")
       Set rng = .Columns(2).Find(What:=TextBox5.Value, Lookat:=xlWhole, _
                                                           LookIn:=xlValues)
       If Not rng Is Nothing Then
       'Wenn er nicht gefunden hat dann MSG...<---FALSCH
           TextBox1.Value = .Cells(rng.Row, 1).Value
       Else
           MsgBox "nix vorhanden"
       End If
   End With
End Sub

hier mal nur für die erste Textbox... den Rest wirst du dann sicher anpassen können


MfG Tom
[-] Folgende(r) 1 Nutzer sagt Danke an Crazy Tom für diesen Beitrag:
  • PhilippB
Top
#6
Danke Tom Angel
Top
#7
Hallo Philipp

Zitat:Deutschland wird 2050 dann auch mal digital  

anbei eine bearbeitete Beispieldatei von mir.  Hat was laenger gedauert, steck viel Arbeit drin.  Mal sehen wie dir meine Idee gefaellt.

Einen Teil deiner Makros habe ich deaktiviert (auf Kommentar gesetzt), z.B. die zum neues Blatt erstellen und speichern. Hat mich beim testen gestört.  Eine ganze Weile habe ich an der Lösung für die EAN Nummer gearbeitet, und habe in die UserForm folgendes neu eingefügt:

Oben Links ist eine ComboBox, die über ein Textfeld geladen werden kann.  Im Makro habe ich die ersten Zahlen als sog.  EAN Haupt-Block als Const Anweisung im Modul1 festgelegt.  Die Nummer kann man beliebig aendern!!  Bei der Eingabe ins Textfeld wird dieser Hauptblock im Makro immer automatisch davor gesetzt.  Das verkürzt deine Eingabe.  Dort kannst du eine 1-3 stellige Zahl eingeben, danach werden 500 Datensaetze ab dieser Nummer geladen.  Die Anzahl der Datensaetze istt auch im Modul1 festgelegt, kann erhöht werden.  

Wenn du in der ComboBox eine EAN Nummer anklickst wird sie automatisch in TextBox5 geladen und das Makro im Modul1 ausgelöst.  Alernativ kannst du auch eine Original EAN Nummer in Textfeld5 eingeben.  ComboBox dürfte schneller gehen. Vor allem hast du nur gültige EAN Nummern in der Box.

Die Daten hole ich im Modul1 aus den zugehörigen Spalten, wobei mir drei Spalten unklar waren.  Das habe ich als Frage dokumentiert.  Was noch offen geblieben ist, ist das kopieren von Daten in die Übersicht Tabelle.  Da war mir noch zuviel unklar.

Jetzt warte ich mal ab wie dir meişn Erstentwurf gefaellt.  Die Userform habe ich verkleinert, weil ich nur einen kleinen Laptop Bildschirm habe.  Als reine Testdatei ist das nicht so wichtig.  Vielleicht beginnen wir ja in der Zusammenarbeit mit der Digitalisierung Deutschlands???  

Bald ist Heiligabend da ....     ich wünsche ein frohes Weihnachtsfest.

mfg  Gast 123


Angehängte Dateien
.xlsm   Test_Master - F1.xlsm (Größe: 1,26 MB / Downloads: 8)
Top
#8
Sry ich war schon durch. Ich bastel dann jetzt weiter daran.

Hast Du zufällig ne Ahnung von PHP ???
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste