PDA

Vollständige Version anzeigen : Textboxen per Schleife auslesen


omich
10.07.2015, 13:02
Moin zusammen!

Habe folgenden Code), den ich in eine Schleife umwandeln will.
Es werden also Textboxen ausgelesen und in Excel geschrieben.
Bitte um Hilfe! Danke im Voraus! :)

.Cells(LezteZeile + 1, 4).Value = Me.txtAP1.Value
.Cells(LezteZeile + 2, 4).Value = Me.txtAP2.Value
.Cells(LezteZeile + 3, 4).Value = Me.txtAP3.Value
.Cells(LezteZeile + 4, 4).Value = Me.txtAP4.Value
.Cells(LezteZeile + 5, 4).Value = Me.txtAP5.Value
.Cells(LezteZeile + 6, 4).Value = Me.txtAP6.Value
.Cells(LezteZeile + 7, 4).Value = Me.txtAP7.Value
.Cells(LezteZeile + 8, 4).Value = Me.txtAP8.Value

Hajo_Zi
10.07.2015, 13:30
For Each ObCb In Me.Controls ' Schleife über alle Steuerelemente
If ObCb.Tag <> "" Then
Worksheets(Left(ObCb.Tag, 9)).Range(Mid(ObCb.Tag, 11, 2) _
& Loletzte) = ObCb.Value
End If
Next ObCb

wir können auch so Antworten wie die Frage gestellt wurde.

<img src="http://Hajo-Excel.de/images/grusz1.gif" align="middle" height="40" alt="Grußformel"><a href="http://Hajo-Excel.de/index.htm"><img border="0" src="http://Hajo-Excel.de/images/logo_hajo3.gif" align="middle" height="40" alt="Homepage"></a>

Kimba06
10.07.2015, 15:17
Hallo,

ersetze die Ziffern 1-8 durch eine Variable und erhöhe diese in einer Schleife.
Dim i, n
i=1
n=8
for i = 1 to n
.Cells(LezteZeile + i, 4).Value = "Me.txtAP"&i&".Value" ' evtl. diesen Teil hinterm = Zeichen separieren
i = i+1
next i

Gruss Achim

Beverly
10.07.2015, 16:48
Hi,

Dim bytBox As Byte
For bytBox = 1 To 8
.Cells(LezteZeile + bytBox, 4).Value = Me.Controls("txtAP1" & bytBox).Value
Next bytBox


<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

omich
11.07.2015, 14:49
Vielen Dank an alle!!!! :-)