命令按钮单击Userform将文本框输入到单元格,然后循环每次单击列

时间:2016-04-03 11:06:56

标签: excel vba excel-vba ranged-loops

我对VBA很新。我创建了一个userform,其文本框需要将文本框数据传输到一系列单元格。我需要它处理的范围是Columns,例如C8:AG8,因此输入并单击文本框中的数据将循环到下一列以重复该过程。我需要循环从列到列工作,而不是行到行。谢谢。

到目前为止,我有下面的内容,但这只填充了一次:

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

1 个答案:

答案 0 :(得分:0)

这样的事可能会这样做:

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