Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Textbxänderung in Tabelle zurückschreiben

Textbxänderung in Tabelle zurückschreiben
15.08.2018 09:23:32
Brigitte
Hallo Forum,
ich bin immer noch neu hier und immer noch VBA-Anfänger.
Ich bekomme in einer Datenmaske in einer Listbox Daten angezeigt. Bei Markierung eines Datensatzes, werden die entsprechenden Daten in TextBoxen angezeigt.
Wie kann ich jetzt Änderungen, die ich in den TextBoxen getätigt habe, wieder in die Tabelle zurückschreiben und zwar genau da, wo sie hin sollen?
Besteht außerdem die Möglichkeit über das Suchfeld in einer Art LiveVorschau die Datensätze so zu reduzieren, dass bei einem Eintrag z.b. eines Buchstabens M, die Datensätze so zu reduzieren, dass nur alle Kunden angezeigt werden, die mit M beginnen. Beim Eintrag des zweiten Buchstabens z.b. Me wieder zu reduzieren usw.?
Da ich Anfängerin bin, wäre eine Erläuterung für Lösung für mich sehr hilfreich. Danke
Brigitte
https://www.herber.de/bbs/user/123340.xlsm
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 09:57:53
ChrisL
Hi Brigitte
Für Teil 1 die Lösung.
Public b As Boolean
Private Sub cmdAendern_Click()
If ListBox1.ListIndex >= 0 Then
With ActiveSheet
b = True
.Cells(ListBox1.ListIndex + 2, 1) = TextBoxPin.Value
.Cells(ListBox1.ListIndex + 2, 2) = TextBoxName.Value
'usw.
b = False
End With
Else
MsgBox "es wurde keine Auswahl getroffen"
End If
End Sub
Private Sub ListBox1_Click()
If b Then Exit Sub
With ListBox1
UserForm1.TextBoxPin = .List(.ListIndex, 0)
UserForm1.TextBoxName = .List(.ListIndex, 1)
UserForm1.TextBoxVorname = .List(.ListIndex, 2)
UserForm1.TextBoxGeb = .List(.ListIndex, 3)
UserForm1.TextBoxSex = .List(.ListIndex, 4)
UserForm1.TextBoxAbteilung = .List(.ListIndex, 5)
End With
TextBoxSuch.SetFocus
End Sub

Teil 2: Wenn du eine ComboBox anstelle einer ListBox verwendest, dann erhältst du Textvorschläge.
Wenn du in der ListBox filtern willst, dann wird es relativ kompliziert und du müsstest grundlegend umbauen. Als VBA-Einsteiger würde ich mich auf die anderen Herausforderungen konzentrieren (z.B. Format(Geburtsdatum, "DD.MM.YYYY")).
cu
Chris
Anzeige
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 10:30:33
Brigitte
Hallo Chris,
dein Code funktioniert einwandfrei. Vielen Dank. Du hast mir sehr geholfen.
Gibt es denn eine andere Möglichkeit eine Suchfunktion einzubauen?
Danke
Brigitte
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 11:13:09
ChrisL
Hi
Danke für die Rückmeldung.
Eine ComboBox scheint mir das einfachste.
Ansonsten kennzeichne die Frage wieder als offen. Vielleicht hat jemand Zeit/Lust etwas für dich zu bauen.
cu
Chris
Anzeige
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 11:14:15
Brigitte
Hallo Chris, hallo Forum,
da ich Anfängerin bin folgende Frage:
Was macht die Variable b?
Warum ListIndex +2 im Code?
.Cells(ListBox1.ListIndex + 2, 1) = TextBoxPin.Value
Ich versuche die Lösung nachzuvollziehen und habe dort noch Klärungsbedarf. Danke
Brigitte
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 11:17:29
Brigitte
Hi Forum,
Sorry, aber ich habe vergessen das Häkchen bei Nichtbeantwortung der Frage, (wobei das ja so nicht stimmt) zu setzen.
Brigitte
Anzeige
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 12:28:38
ChrisL
Hi
ListIndex 0 = 1. Wert = 2. Zeile
ListIndex 1 = 2. Wert = 3. Zeile
darum Index + 2
Das Ändern der Zelle führt automatisch das ListBox Click Ereignis aus, was dazu führt, dass die ListBox gleich wieder neu geladen wird und die Werte wieder überschrieben werden. Mit der Variable setzt du kurzfristig ein Kennzeichen, welches im Click abgefragt wird.
In anderem Kontext würde man die Ereignisse kurzfristig mit EnableEvents abschalten, aber das geht hier nicht. Darum die Umgehungslösung mit der Variable.
cu
Chris
Anzeige
AW: Textbxänderung in Tabelle zurückschreiben
15.08.2018 12:43:01
Brigitte
Hallo Chris,
vielen Dank für die Infos. Danke
Brigitte
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige