|
geryuxi 发表于 2013-11-21 12:53
坐沙发等解答
出错语句的resize 用的莫名其妙导致出现负的行数的运行错误。
众所周知,excel 是不可能出现负的行数的。
去除掉三条语句后面的resize, 则该代码可以正常运行。
BTW: 很不喜欢你的这种程序写法。- Sub 录入()
- 'Stop
- If [b2] = "" Then [i2] = "=today()"
- If [g2] = "" Then MsgBox "请输入单据编号!": Exit Sub
- If [b2] = "" Then MsgBox "请选择收经销商!": Exit Sub
- On Error GoTo 100
- Dim es As Range, a%
- If Sheets("销售明细").[k:k].Find([g2]) = [g2] Then
- MsgBox "已经保存过了!"
- Else
- 100:
- Set es = Cells.Find("*", , xlFormulas, , , xlPrevious)
- a = Application.CountA(Sheets("销售明细").[a:a])
- If es.Row = 3 Then MsgBox "没有填写内容": End
-
- Range([a4], es).Copy Sheets("销售明细").Cells(a + 1, 1)
- Sheets("销售明细").Cells(a + 1, "j") = [b2] '经销商
- Sheets("销售明细").Cells(a + 1, "k") = [g2] '单据编号
- Sheets("销售明细").Cells(a + 1, "l") = Now() '记账日期
- End If
- End Sub
复制代码 |
|