xlDown没有按预期工作

时间:2016-12-10 16:10:55

标签: excel vba excel-vba

我已经关注了this教程

为了处理按钮动作。我想在每次按钮点击时将数据写入新行,但是代码要么覆盖现有数据要么将数据写入新行(并再次覆盖它)。

代码:

k

2 个答案:

答案 0 :(得分:2)

最好直接引用单元格,而不是选择它们并引用ActiveCell。观看Excel VBA Introduction Part 5 - Selecting Cells (Range, Cells, Activecell, End, Offset)

看起来您正在尝试制作唯一标识符(ID)来引用您的记录。但是您在下面的空单元格中添加1:ActiveCell.Value = ActiveCell.Offset( 1 , 0).Value + 1而应该将{1}} 上方单元格的值加1 -1 ActiveCell.Value = ActiveCell.Offset(

, 0).Value + 1

答案 1 :(得分:1)

如果要更加整洁,以避免Activate和逐个单元格Offsets,即可能:

Dim ws As Worksheet
Dim rng1 As Range

Set ws = Sheets(1)
Set rng1 = ws.Cells(Rows.Count, "B").End(xlUp)
rng1.Offset(1, 1).Resize(1, 7) = Array(Me.txtSifraOsobe, Me.txtImeIPrezime, Me.txtAdresa, Me.cboGrad, Me.cboDrzava, , Me.txtDatumRodjenja)