如果填充了第一行,请将Excel切换到下一行

时间:2015-09-30 14:25:56

标签: excel vba

我正在学习Excel VBA,而我只是碰壁了。

我有一个电子表格,我在其中构建了一个UserForm。此用户表单将第14行从A填充到AK。

现在,我已经能够使用此代码从表单中复制数据(部分内容可以在此完全复制):

'Date
Sheet1.Range("A14") = DTPicker1
'AC Type
Sheet1.Range("b14") = ComboBox1
'AC Reg
Sheet1.Range("C14") = TextBox3
'Pic
Sheet1.Range("d14") = TextBox5
'co-pilot
Sheet1.Range("e14") = TextBox4
'from
Sheet1.Range("f14") = TextBox7
'to
Sheet1.Range("g14") = TextBox6
'remarks
Sheet1.Range("h14") = TextBox8

现在我想要做的是,如果填充了A14,那么14个中的所有内容都会切换到15,依此类推。

我有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:2)

这些方面的某些内容应该有效(未经测试):

Static rng As Range
If rng Is Nothing Then
  Set rng = Sheet1.Range("A14")
  Do While rng.Value <> ""
     Set rng = rng.Offset(1)
  Loop
End If

'Date
rng.Range("A1").Value = DTPicker1
'AC Type
rng.Range("B1").Value = ComboBox1
'AC Reg
rng.Range("C1").Value = TextBox3
'Pic
rng.Range("D1").Value = TextBox5
'co-pilot
rng.Range("E1").Value = TextBox4
'from
rng.Range("F1").Value = TextBox7
'to
rng.Range("G1").Value = TextBox6
'remarks
rng.Range("H1").Value = TextBox8

'Point to the next line
Set rng = rng.Offset(1)