我想用SSH框架做一个excel表格文件批量添加的功能,求一个完整的教程,最好有完整的代码。 30
1个回答
展开全部
您好,您这样:
Sub Copy_Data()
Dim wb As Workbook, rng As Range, sht As Worksheet
Dim sht_Name, theDate
sht_Name = "Sheet1" '假设所有报表文件中的数据都在 Sheet1
Set sht = ActiveSheet '保存当前工作表对象
fn = Dir(ThisWorkbook.Path & "\报表-*.xls", vbReadOnly) '打开第一个报表文件
Do While fn <> "" '开始循环
Set wb = Workbooks.Open(fn) '以只读模式打开报表文件
'取得报表文件中的日期字符串
theDate = Mid(fn, InStr(fn, "\报表-") + 4, Len(fn) - InStr(fn, "\报表-") - 7)
'将报表文件中的数据复制到当前工作表
With wb.Worksheets(sht_Name)
.Range(.Range("A2"), .Range("A1").End(xlToRight).End(xlDown)).Copy _
Destination:=sht.Range("A65536").End(xlUp).Offset(1, 1)
End With
wb.Close (False) '关闭报表文件,不保存
sht.Activate '激活当前工作表
Range(Range("A65536").End(xlUp).Offset(1, 0), Range("B65536").End(xlUp).Offset(0, -1)) = DateValue(Format(theDate, "0000-00-00")) '在A列填充报表文件的日期信息
fn = Dir
Loop '循环下一个报表文件
End Sub
Sub Copy_Data()
Dim wb As Workbook, rng As Range, sht As Worksheet
Dim sht_Name, theDate
sht_Name = "Sheet1" '假设所有报表文件中的数据都在 Sheet1
Set sht = ActiveSheet '保存当前工作表对象
fn = Dir(ThisWorkbook.Path & "\报表-*.xls", vbReadOnly) '打开第一个报表文件
Do While fn <> "" '开始循环
Set wb = Workbooks.Open(fn) '以只读模式打开报表文件
'取得报表文件中的日期字符串
theDate = Mid(fn, InStr(fn, "\报表-") + 4, Len(fn) - InStr(fn, "\报表-") - 7)
'将报表文件中的数据复制到当前工作表
With wb.Worksheets(sht_Name)
.Range(.Range("A2"), .Range("A1").End(xlToRight).End(xlDown)).Copy _
Destination:=sht.Range("A65536").End(xlUp).Offset(1, 1)
End With
wb.Close (False) '关闭报表文件,不保存
sht.Activate '激活当前工作表
Range(Range("A65536").End(xlUp).Offset(1, 0), Range("B65536").End(xlUp).Offset(0, -1)) = DateValue(Format(theDate, "0000-00-00")) '在A列填充报表文件的日期信息
fn = Dir
Loop '循环下一个报表文件
End Sub
追问
这是什么语言?为什么我都看不懂
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询