|
问题描述:
在表“合同输入”中,输入明细后,选择“保存”,保存在表“合同明细”中,在第二次以后保存的数据,会有一行覆盖了原有的首行数据。如图
覆盖后的如图所示
表“合同输入”代码,如下
Private Sub 销售合同保存_Click()
Dim i As Integer
Dim j As Integer 'j是合同输入的行数
Dim k As Integer
Dim count As Integer
count = Sheets("合同明细").[a1].CurrentRegion.Rows.count
count2 = Sheets("合同输入").[a1].CurrentRegion.Rows.count
k = count + 1 'k是合同明细中的行数
n = count2 + 1
i = Sheets("合同输入").Range("K12").Value 'i是本张合同输入中的行数
If i <= 13 Then
MsgBox "没有数据需要保存!'"
Exit Sub
End If
ActiveWorkbook.Sheets("合同明细").Cells(n, 1) = Sheets("合同输入").Range("h3").Value '日期
ActiveWorkbook.Sheets("合同明细").Cells(n, 2) = Sheets("合同输入").Range("C3").Value '合同号
ActiveWorkbook.Sheets("合同明细").Cells(n, 3) = Sheets("合同输入").Range("c7").Value '客户
For j = 14 To i
ActiveWorkbook.Sheets("合同明细").Cells(k, 1) = Sheets("合同输入").Range("H3").Value '日期
ActiveWorkbook.Sheets("合同明细").Cells(k, 2) = Sheets("合同输入").Range("C3").Value '合同号
ActiveWorkbook.Sheets("合同明细").Cells(k, 3) = Sheets("合同输入").Range("C7").Value '客户
ActiveWorkbook.Sheets("合同明细").Cells(k, 4) = Sheets("合同输入").Cells(j, 2) '商品名称
ActiveWorkbook.Sheets("合同明细").Cells(k, 5) = Sheets("合同输入").Cells(j, 3) '规格
ActiveWorkbook.Sheets("合同明细").Cells(k, 6) = Sheets("合同输入").Cells(j, 6) '单位
ActiveWorkbook.Sheets("合同明细").Cells(k, 7) = Sheets("合同输入").Cells(j, 7) '数量
ActiveWorkbook.Sheets("合同明细").Cells(k, 8) = Sheets("合同输入").Cells(j, 8) '单价
ActiveWorkbook.Sheets("合同明细").Cells(k, 9) = Sheets("合同输入").Cells(j, 9) '金额
ActiveWorkbook.Sheets("合同明细").Cells(k, 10) = Sheets("合同输入").Cells(j, 11) '备注
k = k + 1
Next j
MsgBox "保存成功!"
End Sub
烦请高手解决为妙!
谢谢
|
|