vb6保存程序中的数据到excel,点击按钮删除excel中的数据(除第一行的所有数据),再保存时从第二行保存 50
点击保存按钮能够保存数据到excel里(从第二行开始保存,第一行是表头不动),点击删除按钮就把除了第一行以外的所有数据都删除(这时,excel里除了第一行都是空的),再点...
点击保存按钮能够保存数据到excel里(从第二行开始保存,第一行是表头不动),点击删除按钮就把除了第一行以外的所有数据都删除(这时,excel里除了第一行都是空的),再点击保存按钮,保存的数据时接着原来保存的数据的下一行接着保存的,怎么让它从第二行开始保存呢?求大神帮忙~~
代码:
Private Sub Command1_Click() '保存当前数据
Dim sVal As String
Dim k2 As Integer
Dim Text As Double
Set xlapp = CreateObject("excel.application")
Set xlbook = xlapp.Workbooks.Open("E:\11.xlsx")
Set xlsheet = xlbook.Worksheets(1)
If k1 <= 0 Then
k2 = 2
sVal = Trim(xlsheet.Cells(k2, 1) & xlsheet.Cells(k2, 2))
Do While sVal <> ""
k2 = k2 + 1
sVal = Trim(xlsheet.Cells(k2, 1) & xlsheet.Cells(k2, 2))
Loop
k1 = k2
End If
xlsheet.Cells(k1, 1) = Format(Now, "'yyyy-mm-dd hh:mm:ss")
xlsheet.Cells(k1, 2) = Text1.Text
xlsheet.Cells(k1, 3) = Text2.Text
xlsheet.Cells(k1, 4) = Text3.Text
xlsheet.Cells(k1, 5) = Text4.Text
xlsheet.Cells(k1, 6) = Text5.Text
xlsheet.Cells(k1, 7) = Text6.Text
xlsheet.Cells(k1, 8) = Text7.Text
xlsheet.Cells(k1, 9) = Text8.Text
xlsheet.Cells(k1, 10) = Text9.Text
xlsheet.Cells(k1, 11) = Label23.Caption
xlsheet.Cells(k1, 12) = Text10.Text
xlsheet.Cells(k1, 13) = Text11.Text
xlsheet.Cells(k1, 14) = Text12.Text
xlsheet.Cells(k1, 15) = Label24.Caption
k1 = k1 + 1
xlbook.Saved = True
xlbook.Save
On Error Resume Next
xlapp.Quit
Set xlapp = Nothing
Set xlbook = Nothing
Set xlsheet = Nothing
MsgBox "save success!", vbInformation + vbOKOnly, "note"
End Sub 展开
代码:
Private Sub Command1_Click() '保存当前数据
Dim sVal As String
Dim k2 As Integer
Dim Text As Double
Set xlapp = CreateObject("excel.application")
Set xlbook = xlapp.Workbooks.Open("E:\11.xlsx")
Set xlsheet = xlbook.Worksheets(1)
If k1 <= 0 Then
k2 = 2
sVal = Trim(xlsheet.Cells(k2, 1) & xlsheet.Cells(k2, 2))
Do While sVal <> ""
k2 = k2 + 1
sVal = Trim(xlsheet.Cells(k2, 1) & xlsheet.Cells(k2, 2))
Loop
k1 = k2
End If
xlsheet.Cells(k1, 1) = Format(Now, "'yyyy-mm-dd hh:mm:ss")
xlsheet.Cells(k1, 2) = Text1.Text
xlsheet.Cells(k1, 3) = Text2.Text
xlsheet.Cells(k1, 4) = Text3.Text
xlsheet.Cells(k1, 5) = Text4.Text
xlsheet.Cells(k1, 6) = Text5.Text
xlsheet.Cells(k1, 7) = Text6.Text
xlsheet.Cells(k1, 8) = Text7.Text
xlsheet.Cells(k1, 9) = Text8.Text
xlsheet.Cells(k1, 10) = Text9.Text
xlsheet.Cells(k1, 11) = Label23.Caption
xlsheet.Cells(k1, 12) = Text10.Text
xlsheet.Cells(k1, 13) = Text11.Text
xlsheet.Cells(k1, 14) = Text12.Text
xlsheet.Cells(k1, 15) = Label24.Caption
k1 = k1 + 1
xlbook.Saved = True
xlbook.Save
On Error Resume Next
xlapp.Quit
Set xlapp = Nothing
Set xlbook = Nothing
Set xlsheet = Nothing
MsgBox "save success!", vbInformation + vbOKOnly, "note"
End Sub 展开
展开全部
这个要用Excel VBA的单元格属性来返回Excel文档中已使用的单元格行数,例如:
1 A1:A10单元格中都有数据,使用End属性,Rw1=xlsheet.cells(1,1).End(xlDown).Row,Rw1返回的值是10
2 A1:A10单元格数据不连续,而且所使用的单元格区域不超过10行,使用UsedRange的属性,Rw1=xlsheet.UsedRange.Rows.Count
按照你现在的代码这两种方法都可以实现定位已使用的行数,进而避免覆盖已有数据。
1 A1:A10单元格中都有数据,使用End属性,Rw1=xlsheet.cells(1,1).End(xlDown).Row,Rw1返回的值是10
2 A1:A10单元格数据不连续,而且所使用的单元格区域不超过10行,使用UsedRange的属性,Rw1=xlsheet.UsedRange.Rows.Count
按照你现在的代码这两种方法都可以实现定位已使用的行数,进而避免覆盖已有数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询