Herbers Excel-Forum - das Archiv

Userform + SVERWEIS

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Userform + SVERWEIS
von: Franz W.
Geschrieben am: 22.11.2003 23:32:22
Hallo Fachleute,

ich erfasse in einer UF Daten, u.a. auch Adressdaten. Dabei wiederholen sich immer wieder mal PLZ und die dazugehörigen Orte.

Ist es möglich, nach Verlassen des Feldes mit der PLZ im nächsten Feld den Ort automatisch eintragen zu lassen, wenn ich die Daten irgendwo in einer Tabelle abgelegt habe? D.h. also bei geöffneter UF per SVERWEIS (oder anders?!?) Daten aus einer Tabelle zu holen?

Für Eure Tipps schon mal vielen Dank und beste Grüße
Franz

Bild

Betrifft: AW: Userform + SVERWEIS
von: Bärnd
Geschrieben am: 23.11.2003 00:30:52
Hallo Franz,

in VBA kann man mit der Funktion Evaluate() auf ALLE Funktionen des "normalen" Excel zugreifen. Mann kann sogar auf Evaluate() verzichten, wenn man den Funktionsaufruf im Klartext (ohne Variablen) in eckige Klammer setzt [ ]. Der Haken ist, daß man die englischen Bezeichner der Funktion vorher rauskriegen muß und evtl. auch die Zellbezüge in das Format Z1S1 bringen muß.

Mit dem MakroRecorder habe ich gerade dieses aufgezeichnet:
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[1],R[1]C:R[3]C[1],2,0)"
also muß es in etwa so gehen:
1. sich in das _Change oder _Exit Ereignis des PLZ-Feldes hängen
2. Evaluate(VLOOKUP....)
3. rauskriegen, ob ein Fehler zurückgegeben wurde (mit Tabellenblattfunktion IsError)
4. Wert in Orts-Feld eintragen

... Es gibt auch PLZ, die für mehre Orte gelten! ...

Ciao

der Bärnd
Bild

Betrifft: AW: Userform + SVERWEIS
von: Thomas Risi
Geschrieben am: 23.11.2003 00:39:06
Hallo Franz

Versuch's mal in etwa so ...


Option Explicit

Private Sub TextBox1_Change()

    On Error Resume Next
    
    Dim myRange As Range
    Dim myPLZ As Long
    
    Set myRange = Application.Worksheets(1).Range("A1:B5")
    
    myPLZ = CLng(TextBox1.Text)
    
    TextBox2.Text = Application.WorksheetFunction.VLookup(myPLZ, _
                                                          myRange, _
                                                          2, False)
                                                 
End Sub


     Code eingefügt mit Syntaxhighlighter 2.5

Gruß
Thomas

Risi Thomas Softwareentwicklung


Bild

Betrifft: AW: Userform + SVERWEIS
von: K.Rola
Geschrieben am: 23.11.2003 00:47:46
Hallo,

ich würde statt einer Textbox eine zweispaltige Combobox nehmen.
Darin die vorhandenen PLZ und Orte über RowSouce zuweisen. Auf
diese Weise kannst du die MatchEntry- Eigenschaft der Combobox
nutzen, um automatisch den zugehörigen Ort auszugeben.

Gruß K.Rola
Bild

Betrifft: Danke! Und bitte um Nachhilfe
von: Franz W.
Geschrieben am: 23.11.2003 08:42:08
Hallo K.Rola,

vielen Dank, die Idee klingt gut, denke ich werde auch diesen Weg gehen. 3 Fragen hätte ich noch dazu:

1. Du sprichst MatchEntry an (ist mir noch neu): wenn ich das richtig sehe, ist das so was ähnliches wie "AutoAusfüllen" ???

2. Häufig gibt es auch die exakt selbe Straße + HsNr. (es handelt sich um Wohnobjekte): Deinem Vorschlag gemäß kann ich die Kombo dann doch auch dreispaltig aufbauen, oder? Funktioniert dann doch genau so ???

3. Lassen sich dann auch noch Werte eingeben - sowohl in der Kombobox für die Straße, als auch in den beiden nachfolgenden Feldern für PLZ und Ort - die NICHT in der Liste stehen ??? Aber das lässt sich wahrscheinlich über die Eigenschaften einstellen, oder ??? Und in diesem Fall müsste ich "MatchEntry" dann wohl auf 2 (fmMatchEntryNone) stellen oder geht das auch mit Abgleich ???

Vielen Dank schon mal für Deine Hilfe

Viele Grüße
Franz
Bild

Betrifft: AW: Danke! Und bitte um Nachhilfe
von: Franz W.
Geschrieben am: 23.11.2003 10:57:07
Hallo K.Rola,

vielen Dank für Deine Hilfe bis hierher!! Bin deinen vorgeschlagenen Weg gegangen und schon ein bisschen weiter, mein Problem ist nun ein anderes, siehe darum meinen neuen Beitrag um 10.55 Uhr.

Vielen Dank und Grüße
Franz
Bild

Betrifft: Vielen Dank Euch allen, damit komm ich weiter ot.
von: Franz W.
Geschrieben am: 23.11.2003 08:42:21
Bild
Excel-Beispiele zum Thema " Userform + SVERWEIS"
Diagramm in Userform XL-Dateien in UserForm listen
UserForm an Excel-Fenster anpassen Fundstellen in UserForm listen
Module und UserForms austauschen In einer Schleife auf Elemente einer UserForm zugreifen
Werte in eine ComboBox einer UserForm übernehmen Zellinhalt als Label-Aufschrift in UserForm
Alle CheckBoxes einer UserForm ansprechen Wenn kein Eintrag, UserForm nicht schließen