Phạm Văn Tiên
Phạm Văn Tiên
Thảo luận 3 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 257 lượt xem

Sub nhapkho_do_while()Sheets(3)Unprotect'Tao thu muc moWith ApplicationFileDig(msoFileDigFolderPicker)

Sub nhapkho_do_while()

Sheets(3).Unprotect

'Tao thu muc mo

With Application.FileDialog(msoFileDialogFolderPicker)

         .AllowMultiSelect = False

If .Show = -1 Then

        Dim duongdan As String

             duongdan = .SelectedItems(1) & "\"

       Dim tenfile As String

             tenfile = "*INPUT_DATA* .xls*"

       Dim file_duoc_mo As String

             file_duoc_mo = Dir(duongdan & tenfile)

      Do While dile_duoc_mo <> ""

'Xac dinh file cho nhan

       Dim wb_cho As Workbook

       Dim wb_nhan As Workbook

       Set wb_nhan = ThisWorkbook

       Set wb_cho = Workbooks.Open(Filename:=duongdan & file_duoc_mo)

'Khai bao bien

        Dim dongcuoi_cho As Long

              dongcuoi_cho = wb_cho.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row

        Dim dongdau_cho As Byte

              dongdau_cho = 3

        Dim khoangcach_cho As Integer

                 khoangcach_cho = dongcuoi_cho - dongdau_cho + 1

         Dim dongcuoi_nhan As Long

              dongcuoi_nhan = wb_nhan.Sheets(3).Cells(Rows.Count, 2).End(xlUp).Row

  'Cu phap logic

         wb_nhan.Sheets(3).Range("B" & dongcuoi_nhan + 1 & ":I" & dongcuoi_nhan + khoangcach_cho).Value = _

         wb_cho.Sheets(1).Range("A" & dongdau_cho & ":H" & dongcuoi_cho).Value

 ' dong Wb vua mo

         wb_cho.Close savechanges:=False

 ' xac dinh file khac duoc mo

       file_duoc_mo = Dir

Loop

End If

End With

End Sub


Thảo luận 3 câu trả lời
Lượt xem 257 lượt xem
Vỗ tay vỗ tay
Phạm Văn Tiên 15:07 - Jul 27, 2021

Add kiểm tra dùm sao doạn code chạy đến ( If .Show = -1 Then )thì nó quay lại bước đầu ạ

Vỗ tay vỗ tay
Phạm Văn Tiên 09:07 - Jul 29, 2021

Thanks.

Vỗ tay vỗ tay
Phạm Văn Tiên 10:07 - Jul 29, 2021

Lệnh .show của FileDialog thì:

tham số -1 thể hiện nút bấm OK

tham số 0 thể hiện nút bấm Cancel

Cần xem lại thao tác bạn có bấm vào nút OK không.

Về logic thì mình thấy code không có vấn đề gì. Bạn có thể gửi kèm file để xem code chạy bị lỗi ở dòng nào nhé.

Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông