2016-04-03 3 views
0

Ich bin sehr neu in VBA. Ich habe ein Benutzerformular erstellt, das Textfelder enthält, die Textboxdaten in eine Reihe von Zellen übertragen müssen. Der Bereich, an dem ich arbeiten muss, ist Columns, zum Beispiel C8: AG8, so dass die Daten in dem Textfeld, die einmal eingegeben und angeklickt wurden, zur nächsten Spalte zurückkehren, um den Prozess zu wiederholen. Ich brauche die Schleife, um von Spalte zu Spalte zu arbeiten, nicht Zeile für Zeile. Vielen Dank.Befehlstaste klicken Sie auf Benutzerform geben Sie Textfeld zu Zelle, dann Schleife Spalten pro Klick

Bisher habe ich die folgenden jedoch haben, auffüllt Diese nur einmal:

Private Sub CommandButton1_Click() 
    Range("C8") = TextBox1.Value 
    Range("C9") = TextBox2.Value 
    Range("C10") = TextBox3.Value 
    Range("C11") = TextBox4.Value 
    Range("C12") = TextBox5.Value 
    Range("C13") = TextBox6.Value 
    Range("C14") = TextBox7.Value 
    Range("C15") = TextBox8.Value 
    Range("C16") = TextBox9.Value 
    Range("C17") = TextBox10.Value 
    Range("C18") = TextBox11.Value 
    Range("C19") = TextBox12.Value 
    Range("C20") = TextBox13.Value 
    Range("C21") = TextBox14.Value 
    Range("C22") = TextBox15.Value 
    Range("C23") = TextBox16.Value 
    Range("C24") = TextBox17.Value 
    Range("C25") = TextBox18.Value 
End Sub 

Antwort

0

So etwas wie dies wahrscheinlich tun würde:

Private Sub CommandButton1_Click() 

Dim i As Integer 

For i = 3 To 33 'Columns C to AG 

    Cells(8, i) = TextBox1.Value 
    Cells(9, i) = TextBox2.Value 
    Cells(10, i) = TextBox3.Value 
    Cells(11, i) = TextBox4.Value 
    Cells(12, i) = TextBox5.Value 
    Cells(13, i) = TextBox6.Value 
    Cells(14, i) = TextBox7.Value 
    Cells(15, i) = TextBox8.Value 
    Cells(16, i) = TextBox9.Value 
    Cells(17, i) = TextBox10.Value 
    Cells(18, i) = TextBox11.Value 
    Cells(19, i) = TextBox12.Value 
    Cells(20, i) = TextBox13.Value 
    Cells(21, i) = TextBox14.Value 
    Cells(22, i) = TextBox15.Value 
    Cells(23, i) = TextBox16.Value 
    Cells(24, i) = TextBox17.Value 
    Cells(25, i) = TextBox18.Value 

Next i 

End Sub 
+0

Hallo, Danke, ich habe ein anderes Problem als auch . (viel größer) um damit anzufangen habe ich – Eyeris87