Office: (Office 2010) VBA In Listbox bestimmten Eintrag ändern

Helfe beim Thema VBA In Listbox bestimmten Eintrag ändern in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Guten Tag, ich möchte wenn ich auf den Button "Soldaten anlegen/ändern" Klicke in der zweiten Ansicht "Soldaten Suchen", wenn ich z.B. nach dem Namen... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von skidrow, 25. Oktober 2015.

  1. VBA In Listbox bestimmten Eintrag ändern


    Guten Tag,

    ich möchte wenn ich auf den Button "Soldaten anlegen/ändern" Klicke in der zweiten Ansicht "Soldaten Suchen", wenn ich z.B. nach dem Namen Müller Suche, die Daten ändern können. Soweit Funktioniert das auch, aber sobald ein Name doppelt vorkommt, ändert er nicht den richtigen. Wie bekomme ich das hin? Kann mir da wer helfen?

    Zur Veranschaulichung habe ich euch eine Testdatei hochgeladen.

    Beispiel:

    Ich suche nach dem Namen Müller

    Selectiere dort den David Müller und möchte diese Daten "in der Tabelle Soldaten hinterlegt" Rechts neben der Listbox angezeigt bekommen.

    Wenn ich dann auf Speichern drücke, soll er den richtigen (also David) ändern.

    Hoffe mir kann wer helfen.

    Danke für eure Hilfe!

    :)
     
    skidrow, 25. Oktober 2015
    #1
  2. Moin,

    Du musst bei der Prüfung des Selectierten Wertes der Listbox mit der Tabelle Nicht nur "Müller" also den "erstspalteneintrag" prüfen sondern auch den "zweitspalteneintrag"

    also sinngemäß
    Code:
    ..

    Warum?
    Weil deine Schleife nur nach dem ersten Müller sucht. Und nicht nach dem Müller David.

    Alterantiv kannst du mit einer ID arbeiten. Dann musst du aber grundlegend die Struktur ändern.


    Grüße
     
  3. Beverly
    Beverly Erfahrener User
    Hi,

    der einfachste Weg: benutze eine zusätzliche Spalte für die ListBox, in die du beim Füllen der ListBox die relevante Zeile ainträgst - also rngcellPLZ.Row. Dann kannst du diesen Eintrag bei der Übergabe der geänderten Daten verwenden.
    Die Spaltenbreite kannst du auf 0 setzen, sodass die Spalte nicht zu sehen ist.


    VBA In Listbox bestimmten Eintrag ändern grusz.gif
     
    Beverly, 26. Oktober 2015
    #3
  4. VBA In Listbox bestimmten Eintrag ändern

    Das hatte ich mir schon gedacht. Klingt einfach, nur schaffe ich das nicht zu ändern. Kannst du mir einenanhalt geben? Ich habe nicht wirklich Ahnung von VBA und wie du bestimmt gesehen hast, mir selber alles zusammengesucht und probiert. (dementsprechend sieht der Code auch wüst aus)
     
    skidrow, 26. Oktober 2015
    #4
  5. Danke Beverly, das werde ich mal ausprobieren.
     
    skidrow, 26. Oktober 2015
    #5
  6. Hi, ich nehme mal an, Du bist auch Timo....*Smilie

    wenn Du auf Deinen Suche starten - Button klickst, erstellst Du eine 3-spaltige Listbox, deren 3. Spalte die gefundene Adresse aufnimmt. Das ignorierst Du im Click Ereignis der Listbox vollkommen. Dort lässt Du nach Müller in Spalte 1 suchen.
    Die Schleife darin ist zudem überflüssig. Ändere den Code des Click-Ereignisses mal so ab:
    Code:
    ...noch ein kleiner Hinweis. Textbox1 bis 128 sind nicht wirklich Namen, die sich einem auf den 1. Blick erschließen. Man kann die Name Eigenschaften der Objekte auch ändern. txtVorname wäre eine Möglichkeit für eine Textbox, die den Vornamen aufnehmen soll....
     
  7. Ich schaffe beides nicht.... egal was ich mache. Bei R J bekomme ich nur "Neuer Eintrag Zeile X" angezeigt. Bei Beverly, weiß ich nicht wie ich das anstellen kann.
     
    skidrow, 26. Oktober 2015
    #7
  8. Beverly
    Beverly Erfahrener User

    VBA In Listbox bestimmten Eintrag ändern

    Deiner ListBox weist du doch bereits die Adresse zu (hatte ich nicht gesehen), dann kannst du daraus auch die Zeile ableiten, um die Daten aus der Tabelle zu holen. Anschließend musst du dich nur noch auf diese Zeile beziehen:

    Code:
    und auch beim Speichern kannst du das so lösen:

    Code:
    VBA In Listbox bestimmten Eintrag ändern grusz.gif
     
    Beverly, 26. Oktober 2015
    #8
  9. Das war natürlich sehr dumm von mir! Danke Beverly.
     
    skidrow, 27. Oktober 2015
    #9
  10. Code:
    Wie kann ich da noch eine zweite Spalte einfügen? Also Name und Vorname?

    Beverly, ich kann dich leider nicht bewerten. Ich habe dich als letztes bewertet und deshalb geht das nicht.
     
  11. Beverly
    Beverly Erfahrener User
    Hi,

    stelle für die ListBox1 die Eigenschaft ColumnCount auf 2, dann musst du den Code nur um die folgende Zeile ergänzen:

    Code:
    VBA In Listbox bestimmten Eintrag ändern grusz.gif
     
  12. Kann ich die jetzt auch wieder so ansprechen wie die zweite Listbox? Das ich bei doppelten, die richtigen angezeigt bekomme?
     
  13. Beverly
    Beverly Erfahrener User

    VBA In Listbox bestimmten Eintrag ändern

    Dann musst du die ListBox mit 3 Spalten versehen und die Zelladresse in die 3. Spalte schreiben - so wie bei ListBox2


    VBA In Listbox bestimmten Eintrag ändern grusz.gif
     
  14. Ich finde meinen Fehler nicht. Könntest du mal drüber gucken?
     
  15. Beverly
    Beverly Erfahrener User
    Welchen Fehler und wo?


    VBA In Listbox bestimmten Eintrag ändern grusz.gif
     
Thema:

VBA In Listbox bestimmten Eintrag ändern

Die Seite wird geladen...
  1. VBA In Listbox bestimmten Eintrag ändern - Similar Threads - VBA Listbox bestimmten

  2. Suchfunktion in Listbox

    in Microsoft Excel Hilfe
    Suchfunktion in Listbox: Hallo zusammen, bin ein Neuling was VBA angeht und habe folgendes Problem. Über Double Click öffnet sich eine neue Userform und die Daten der Zeile füllen Textboxen aus. Das funktioniert alles....
  3. Listenfeld in Word 2016

    in Microsoft FrontPage Hilfe
    Listenfeld in Word 2016: Hallo, leider konnte ich keinen Eintrag zu meinem Problem finden: Wegen der größeren Länge von Texten kann ich nicht nur einfach eine listbox verwenden. Die listbox zur Auswahl der Alternativen...
  4. Excel VBA - ListBox mit TextBox Filtern

    in Microsoft Excel Hilfe
    Excel VBA - ListBox mit TextBox Filtern: Grüße! Bin sonst stiller Mitleser und kann im Regelfall meine Probleme durch andere Forenbeiträge ableiten und passend abändern, aber hier bin ich an einem Punkt, wo meine VBA-Kenntnisse auf ihre...
  5. VBA Listbox in abhängigkeit befüllen

    in Microsoft Excel Hilfe
    VBA Listbox in abhängigkeit befüllen: Vorweg direkt, ich entschuldige mich für´s Crossposting und lasse den anderen Beitrag löschen, mir war das nicht bekannt. Hallo zusammen, Ich habe eine kleine Excel datei mit einer Userform zur...
  6. VBA ListBox Zeilen entsprechend in Tabelle löschen

    in Microsoft Excel Hilfe
    VBA ListBox Zeilen entsprechend in Tabelle löschen: Hallo zusammen, ich habe ein Problem mit dem Löschen von Inhalten aus meiner Tabelle anhand der Auswahl in der ListBox. Ich lese die Daten der ListBox aus einem Tabellenblatt ein. Multiselect ist...
  7. vba listbox filter beim füllen

    in Microsoft Excel Hilfe
    vba listbox filter beim füllen: Hallo zusammen, leider reichen meine bscheidenen Kenntnis nicht aus. Vielleicht habt ihr eine Lösung für mich. Möchte eine Listbox füllen (ColumnCount = 6) mit Daten einer Tabelle, deren Wert in...
  8. Mehrfachauswahl ohne VBA

    in Microsoft Excel Hilfe
    Mehrfachauswahl ohne VBA: Hallo an alle, ich habe einen Bereich mit Namen und Auswahlkennzeichen: Nüsse - wahr Schokolade - falsch Gemüse - wahr Alkohol - falsch Ich möchte in einer Listbox die Namen als Multiselect...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden