Hoacomay96
Thành viên chính thức
- Tham gia
- 18/3/08
- Bài viết
- 96
- Được thích
- 8
Em có đoạn code về việc copy dữ liệu từ nhiều file được tải trên GPE và đã được chỉnh sửa.Nhưng nó chạy vẫn còn nhiều lỗi như sau:
1- Mỗi lần code thi hành lệnh copy ở 1 file và paste vào file Tong.xls thì hiện ra bảng thông báo chọn Yes or No , Cancel của Clipboard và phải chon Yes thì mới paste được.Làm thế nào để loại bỏ được hộp thoại đó trên màn hình ?
2- Em muốn khi kết thúc lệnh thì file Tong.xls tự Save và file chứa code tự đóng lại không Save.
Nhờ tất cả các bác trên diễn đàn sửa giúp. Em xin trân thành cảm ơn.Dướ đay là code và các file dữ liệu .
Option Explicit
Sub Copyfiles()
Application.ScreenUpdating = False
Dim path, dir As String
Dim newbook
Dim i, a, b As Integer
Dim rg, rg1, filenames, savechange As String
Dim rowsn(1 To 200) As Integer
Set newbook = Workbooks.Add
With newbook
.Title = ""
.Subject = ""
.SaveAs FileName:="d:\Tong.xls"
Application.Caption = ""
End With
dir = "d:\dulieu\"
On Error Resume Next
For i = 1 To 200
path = dir & "file_" & Format(i, "") & ".xls"
Workbooks.Open FileName:=path
rowsn(i) = Worksheets("Sheet1").UsedRange.Rows.count
Worksheets("Sheet1").UsedRange.Select
'MsgBox "So dong trong file: " & rowsn(i)
Selection.Copy
ActiveWorkbook.Close
If i = 1 Then
a = 1: rg1 = "A" & 1
Range(rg1).Select
Else
b = i - 1
a = rowsn(b) + a
rg = "A" & a
Range(rg).Select
End If
ActiveSheet.Paste
Next i
MsgBox "Tong so file la: " & i
If Err.Number > 0 Then
Workbooks("Tong").Activate
Workbooks().Close
End If
Exit Sub
Application.ScreenUpdating = True
Workbooks("codeVBA").Close
End Sub
1- Mỗi lần code thi hành lệnh copy ở 1 file và paste vào file Tong.xls thì hiện ra bảng thông báo chọn Yes or No , Cancel của Clipboard và phải chon Yes thì mới paste được.Làm thế nào để loại bỏ được hộp thoại đó trên màn hình ?
2- Em muốn khi kết thúc lệnh thì file Tong.xls tự Save và file chứa code tự đóng lại không Save.
Nhờ tất cả các bác trên diễn đàn sửa giúp. Em xin trân thành cảm ơn.Dướ đay là code và các file dữ liệu .
Option Explicit
Sub Copyfiles()
Application.ScreenUpdating = False
Dim path, dir As String
Dim newbook
Dim i, a, b As Integer
Dim rg, rg1, filenames, savechange As String
Dim rowsn(1 To 200) As Integer
Set newbook = Workbooks.Add
With newbook
.Title = ""
.Subject = ""
.SaveAs FileName:="d:\Tong.xls"
Application.Caption = ""
End With
dir = "d:\dulieu\"
On Error Resume Next
For i = 1 To 200
path = dir & "file_" & Format(i, "") & ".xls"
Workbooks.Open FileName:=path
rowsn(i) = Worksheets("Sheet1").UsedRange.Rows.count
Worksheets("Sheet1").UsedRange.Select
'MsgBox "So dong trong file: " & rowsn(i)
Selection.Copy
ActiveWorkbook.Close
If i = 1 Then
a = 1: rg1 = "A" & 1
Range(rg1).Select
Else
b = i - 1
a = rowsn(b) + a
rg = "A" & a
Range(rg).Select
End If
ActiveSheet.Paste
Next i
MsgBox "Tong so file la: " & i
If Err.Number > 0 Then
Workbooks("Tong").Activate
Workbooks().Close
End If
Exit Sub
Application.ScreenUpdating = True
Workbooks("codeVBA").Close
End Sub
File đính kèm
Lần chỉnh sửa cuối: