Textbox, Eingabe = Variablenname, Wert in Textbox2 ?

  • Hallo zusammen,

    ich möchte gerne folgendes Tool erstellten:

    Zuerst werden Variablen definiert. Dann in TextBox1 eine Texteingabe gemacht und nach einem Button-Click in Textbox2 der dazugehörige Wert dargestellt.

    Mein Problem: In Textbox2 wird immer nur der Eingabetext aus Textbox1 angzeigt, nicht jedoch der Wert der entsprechenden Variable.

    Mein Ziel: In Textbox1 gebe ich "Schmidt" ein und nach dem Button-Click steht in TextBox2 die Abteilung. Vielen Dank für Eure Hilfe!

    Hier mein Beispiel, was nicht funktioniert:

    Dim Schmidt As String = "Helpdesk"
    Dim Search As String
    ' Get search string from user.
    Search = TextBox1.Text
    ' Find string in text.
    TextBox2.Text = Search

  • versteh ich net genau. du liest doch erst den text aus textbox 1 in
    eine variable. und dann schreibst eben diese variable in textbox 2.

    is doch logisch dass dann in textbox2 das gleiche wie in textbox1 steht...

    was sollte denn sonst drinstehn ?

  • Hallo Driver,

    danke für das schnelle Feedback. Da gebe ich Dir Recht, das ist ein Logikfehler....

    Was ich machen möchte:

    1. Strings definieren
    2. In der Ersten Textbox eine Texteingabe machen
    3. In der zweiten Textbox soll ein Variablenwert angezeigt werden, welche dem Variablennamen entspricht, der mit dem Inhalt der Textbox indentisch ist.

    Beispiel:

    In Textbox1 gibt man Schmidt ein, in Textbox2 steht nach dem Klick die entsprechende Abteilung.

    So möchte ich für Kollegen ein kleines Nachschlagwerk zB. mit Telefonnummern oder Abteilungssuche etc. schreiben. Man gibt den Nachnahmen ein und sieht nach einem Klick sofort die Durchwahl, welche in dem Tool als String gespreichert ist: Dim Müller As String = "1640"

  • naja, also da hätte ich eine umständliche lösung ;) :

    du definierst einfach in strings die ausgabe die du haben möchtest, dann soll der benutzer in einer input-box oder wo auch immer das "thema" eingeben, das speicherst du in deinem string search ab, und dann einfach eine if-Abfrage:

    If search = "Schmidt" then
    'neue Variabel mit dem Ergebnis (dim ergebnis as string)
    ergebnis = "Helpdesk"
    else if search = "Huber" then
    ergebnis = "Verwaltung"
    end if

    'dann die Ausgabe:
    MsgBox "Sie suchten nach: " & search & ", gefundene Einträge: " & ergebnis

    wenn du die search variable mit einer InputBox zuweist, würde ich dem Benutzer noch einige Möglichkeiten usw vorschlagen, dass er weiß wie er suchen kann.
    Bzw kannst du in VBA (zb mit Excel) sehr schön ein Formular machen, wo der benutzer dann einiges auswählen kann, zb dass er nur nach telefonnummern suchen soll..

    ich hoffe ich habe dir ein bisschen geholfen, mfg SeekeR

    Gehe immer vom guten Willen Anderer aus!

  • Also so ginge es in Visual Basic:

    Private Sub Command1_Click()
    Dim name As String

    name = Text1.Text

    Select Case name
    Case "schmidt"
    abteilung = "Helpdesk"
    Case "mayer"
    abteilung = "Verwaltung"
    Case Else
    abteilung = "nix gefunden"
    End Select

    Text2.Text = abteilung

    End Sub


    Gruss
    Eb

  • jap so geht es natürlich auch, case ist ja nicht sehr unterschiedlich zu if..

    nach dem beispiel hätten wir dann im userform ein Text1 feld, ein Text2 feld und einen "Such" Button oder was auch immer. ein einfacher code, sehr effizient. ;) mfg SeekeR

    Gehe immer vom guten Willen Anderer aus!

  • also ich würd da entweder direkt ne datenbank dahinter legen (falls noch
    mehr dazukommt), oder für die abteilungen n 2 dimensionales array verwenden...

  • Guten Morgen!

    Wow, vielen Dank für eure Hilfe!!!! Mit if oder case hat es prima geklappt. Habe mich riesig über eure Postings gefreut.

    Das mit dem 2 dimensionalen Array würde mich auch interessieren, ich hoffe ich finde ein Beispiel im Internet dazu.

    Ich habe mich auch schon nach Büchern zu Visual Basic umgeschaut, aber was ich gefunden habe war entweder zu allgemein oder ich habe nur Bahnhof verstanden :oops

    Vielen Dank nocheinmal!