当前位置:文档之家› vb操作excel

vb操作excel

vb操作excel,读取一张表格数据处理后放入另一张表格。
Private Sub Command1_Click()
Set XLAPP = CreateObject("Excel.Application")
XLAPP.Visible = False
XLAPP.DisplayAlerts = False
Set xlbook1 = XLAPP.Workbooks.open("i:\水泥产品合格证模板.xls")
Set xlSheet1 = xlbook1.worksheets(1)
Set xlbook2 = XLAPP.Workbooks.open("i:\水泥进场登记汇总表.xls")
Set xlSheet2 = xlbook2.worksheets(1)
Set xlbook3 = XLAPP.Workbooks.Add
Print https://www.doczj.com/doc/3f12400443.html,
Print https://www.doczj.com/doc/3f12400443.html,
Print https://www.doczj.com/doc/3f12400443.html,
Dim N As Long '有效行数
For i = 1 To https://www.doczj.com/doc/3f12400443.html,edRange.Rows.Count '内置函数计算的有效行数
If xlbook2.sheets(1).Cells(i, 1).Value = "" Then Exit For
N = N + 1
Next
For i = 1 To N - 2
Cls
Print "正在处理第" & i & "张表格"
Print "进度:" & Format(i / (N - 2), "00.0%")
xlSheet1.Copy Before:=xlbook3.sheets(i)
Dim Mydate
Mydate = xlbook2.sheets(1).Cells(i + 2, 2).Value '日期
Mydate = Year(Mydate) & Month(Mydate)
If Mydate = "20091" Or Mydate = "20092" Or Mydate = "20093" Or Mydate = "20094" Or Mydate = "20097" Then
xlbook3.sheets(i).Cells(10, 1).Value = "通知出厂日期:" & Format(xlbook2.sheets(1).Cells(i + 2, 2).Value - 7, "yyyy年m月d日")
Else
xlbook3.sheets(i).Cells(10, 1).Value = "通知出厂日期:" & Format(xlbook2.sheets(1).Cells(i + 2, 2).Value - 5, "yyyy年m月d日")
End If
xlbook3.sheets(i).Cells(11, 1).Value = "出厂编号:" & xlbook2.sheets(1).Cells(i + 2, 8).Value
xlbook3.sheets(i).Cells(21, 9).Value = i
xlbook3.sheets(i).Name = Year(xlbook2.sheets(1).Cells(i + 2, 2).Value) & "_" & i
Next
xlbook3.sheets(xlbook3.sheets.Count).Delete
Print xlbook3.sheets.Count
xlbook3.SaveAs "i:\123.xls"
xlbook1.Close
xlbook2.Close
xlbook3.Close
XLAPP.quit
Print "ok"
End Sub

相关主题
文本预览
相关文档 最新文档