Anzeige
Archiv - Navigation
1616to1620
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
Inhaltsverzeichnis

TextBox über Variable befüllen und zurückschreiben

TextBox über Variable befüllen und zurückschreiben
10.04.2018 15:01:48
Rudi
Liebe Excelkönner,
ich habe mir ein Formular zusammengebaut das über 100 Textboxen enthält. Ich befülle dies aus einem Tabellenblatt aus der aktiven Zeile.
TextBox1 = Cells(ActiveCell.Row, 181)
TextBox2 = Cells(ActiveCell.Row, 182)
TextBox3 = Cells(ActiveCell.Row, 183)
TextBox4 = Cells(ActiveCell.Row, 184)
TextBox5 = Cells(ActiveCell.Row, 185)
TextBox6 = Cells(ActiveCell.Row, 186)
TextBox7 = Cells(ActiveCell.Row, 187)
TextBox8 = Cells(ActiveCell.Row, 188)
TextBox9 = Cells(ActiveCell.Row, 189)
TextBox10 = Cells(ActiveCell.Row, 190)
usw.
danach kann ich Änderungen vornehmen und schreibe die Daten wieder zurück
Cells(ActiveCell.Row, 181) = TextBox1
Cells(ActiveCell.Row, 182) = TextBox2
Cells(ActiveCell.Row, 183) = TextBox3
Cells(ActiveCell.Row, 184) = TextBox4
Cells(ActiveCell.Row, 185) = TextBox5
Cells(ActiveCell.Row, 186) = TextBox6
Cells(ActiveCell.Row, 187) = TextBox7
Cells(ActiveCell.Row, 188) = TextBox8
Cells(ActiveCell.Row, 189) = TextBox9
Cells(ActiveCell.Row, 190) = TextBox10
Nachteil bei der Sache ist, dass das bei den vielen Textboxen einige Zeit dauert bis die Daten zurück auf das Tabellenblatt geschrieben wurden.
Denke das es auch einfacher über eine Textbox-Variable und einer Schleife gehen müsste, habe es aber leider nicht hinbekommen.
Freue mich über einen Lösungsansatz, danke.
Rudi

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TextBox über Variable befüllen und zurücksch
10.04.2018 15:25:53
Daniel
Hi
Schleifen kann man schon verwenden, wenn die Zellen nebeneinander liegen und die TextBoxen entsprechend benannt sind:
zum Einlesen der Werte in die TextBoxen (Code passend für dein Beispiel)
For i = 1 to 10
me.controls("TextBox" & i).Text = Cells(ActiveCell.Row, 180 + i)
Next
das Rückschreiben der Werte könntest du genauso machen, ist aber nicht schneller, nur der Code ist kürzer.
Das Rückschreiben lässt sich beschleunigen, in dem man die Werte zuerst in ein 2-Dimensionales Array schreibt und dann das Array als ganzes in die Tabelle übergibt:
dim Arr(1 to 1, 1 to 10)
for i = 1 to 10
Arr(1, i) = me.controls("TextBox" & i).Text
Next
Cells(ActiveCell.Row, 181).Resize(Ubound(Arr, 2).Value = Arr
Gruß Daniel
Anzeige
AW: TextBox über Variable befüllen und zurücksch
11.04.2018 08:34:07
Rudi
Danke Daniel und Rudi für die Hilfe, werde es gleich ausprobieren
Schöne Grüße vom Bodensee
Rudi
TextBox über Variable befüllen und zurückschreiben
10.04.2018 15:31:13
Rudi
Hallo,
wenn das so schön in der Reihe ist
1.
r=activecell.row
for i=1 to 10  'anpassen
controls("TextBox" &i)=cells(r,i+180)
next i
2.
dim arr(1 to 10) 'anpassen
for i=1 to 10   'anpassen
arr(i)=controls("TextBox" &i)
next i
cells(activecell.row,181).resize(,ubound(arr))=arr
Gruß
Rudi

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige