Cho mình hỏi , mình đã làm giống như trong bài hướng dẫn nhưng tại sao đoạn mã mình đóng khung chương trình lại báo lỗi nhỉ.
đây là đoạn code mình viết:
Sub gop_dulieu()
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Show
Dim i As Long
For i = 1 To .SelectedItems.Count ' so luong cac file duoc chon
' gan bien cho workbook
Dim wb_kq As Workbook
Dim wb_select As Workbook
Set wb_kq = ThisWorkbook 'noi dang viet ma VBA
Set wb_select = Workbooks.Open(.SelectedItems(i))
Dim dongcuoi_wb2, dongdau_wb2, khoangcach_wb2 As Long
dongcuoi_wb2 = dongcuoi(wb_select.Sheets("sheet1"), 1)
dongdau_wb2 = 2
khoangcach_wb2 = dongcuoi_wb2 - dongdau_wb2 + 1
Dim dongcuoi_wb4 As Long
dongcuoi_wb4 = dongcuoi(wb_kq.Sheets("data"), 1)
wb_kq.Sheets("Data").Range("A" & dongcuoi_wb4 + 1 & ":C" & dongcuoi_wb4 + khoangcach_wb2).Value = _
wb_select.Sheets("sheet1").Range("A" & dongdau_wb2 & ":c" & dongcuoi_wb2).Value
wb_select.Close savechanges:=False
Next i
End With
End Sub
Function dongcuoi(ws As Worksheet, col As Long)
lastrow = ws.Cells(Rows.Count, col).End(xlUp).Row
End Function
Chào bạn bạn có thể xem file mẫu nhé.
wb_kq.Sheets("Data").Range("A" & dongcuoi_wb4 + 1 & ":C" & dongcuoi_wb4 + khoangcach_wb2).Value = _
wb_select.Sheets("sheet1").Range("A" & dongdau_wb2 & ":c" & dongcuoi_wb2).Value
ý mình hỏi đoạn mã trên mình sai chỗ nào, mà chương trình báo lỗi
mình kiểm tra kỹ rồi nhưng vẫn không phát hiện ra
Chào bạn kiểm tra giúp gitiho xem có "sheet1" trong các workbook bạn tìm không hay là "Sheet1" nhé
nếu là sheet1 thì chương trình phải sai từ dòng lệnh: dongcuoi_wb2 = dongcuoi(wb_select.Sheets("sheet1"), 1)
khó hiểu quá
Chào bạn bạn đẩy file lên giúp gitiho nhé
gitiho ơi đẩy file kiểu gì nhỉ
Chào bạn bạn làm theo hướng dẫn sau nhé
file đầu là file có VBA
2 file sau là file lấy dữ liệu. Gitiho xem giúp mình xem lỗi ở đâu nhé.
Chào bạn bạn cho gitiho xin quyền truy cập nhé.
gitiho xem giúp mình nhé
mình tìm ra lỗi rồi Gitiho nhé. Thanks