Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
340to344
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
340to344
340to344
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Userform + SVERWEIS

Userform + SVERWEIS
22.11.2003 23:32:22
Franz W.
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

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform + SVERWEIS
23.11.2003 00:30:52
Bärnd
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
Anzeige
AW: Userform + SVERWEIS
23.11.2003 00:39:06
Thomas Risi
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


Anzeige
AW: Userform + SVERWEIS
23.11.2003 00:47:46
K.Rola
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
Danke! Und bitte um Nachhilfe
23.11.2003 08:42:08
Franz W.
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
Anzeige
AW: Danke! Und bitte um Nachhilfe
23.11.2003 10:57:07
Franz W.
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
Vielen Dank Euch allen, damit komm ich weiter ot.
23.11.2003 08:42:21
Franz W.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige