Lê Nhã Uyên
Lê Nhã Uyên
Thảo luận 5 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 158 lượt xem

Em chọn nhập dữ liệu dòng bên phải để nhập vào bên trái Nhưng e chạy

Thầy ơi. Em chọn nhập dữ liệu dòng bên phải để nhập vào bên trái . Nhưng e chạy code như bài giảng nó k chạy và k lưu. Thầy xem giúp Em sửa lỗi cho e với

Sub luu_du_lieu_KH()

   'Tim dong cuoi Sheet KH

    Dim DongCuoi As Long

    DongCuoi = Sheets("KHACHHANG").range("C" & Rows.Count).End(xlUp).Row

                   If Sheets("KHACHHANG").range("C" & i) <> "" Then

                With Sheets("KHACHHANG")

 .range("B" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("Q4").Value 'ETD

 .range("C" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("Q5").Value ' BILL

.range("D" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("Q6").Value ' KH

.range("E" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("E6:E24").Value ' MATHANG

.range("F" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("F6:F24").Value 'SL

.range("G" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("G6:G24").Value ' DV TINH

.range("H" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("H6:H24").Value ' THUE

.range("I" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("I6:I24").Value ' USD

.range("J" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("J6:J24").Value ' VN?

.range("K" & DongCuoi + 1).Value = Sheets("KHACHHANG").rang("K6:K24").Value ' RATE

    End With

End Sub

        Sub xoa_KH()

        Sheets("KHACHHANG").range("T6:T24, U6:U24,V6:V24").ClearContents

        End Sub

       Sub KH_Close()

    '     Sheets("KHACHHANG")..Visible = xlSheetHidden

    Sheets("DS_KH").Visible = xlSheetVisible

    Sheets("DS_KH").Activate

End Sub

Sub KH_Select()

    With Sheets("KHACHHANG")

        .Visible = xlSheetVisible

        .Activate

    End With

End Sub


Thảo luận 5 câu trả lời
Lượt xem 158 lượt xem
Vỗ tay vỗ tay
Lê Nhã Uyên 10:11 - Nov 16, 2020

Chào bạn bạn có thể đẩy file lên không?

Vỗ tay vỗ tay
Lê Nhã Uyên 11:11 - Nov 16, 2020

da thay giong nhu bai giang tren , 

cách lấy nội dung từ Sheet này sang Sheet khác, ma tren VD thay huong dan choTen hang chi luu 1 lan co 1 dong. E muon luu lan luot cac ten hang cho 1 don hang:

VD: hang 1/ cam 10

       hang 2/    tao    100

        hang 2/    man    200

thi ben du lieu co cap nhat 3 hang vao ben luu du lieu. em can thay huong dan code nay giup e

Vỗ tay vỗ tay
Lê Nhã Uyên 11:11 - Nov 16, 2020

Trong đoạn code trên của bạn một số vấn đề như sau:

1. 

.range("E" & DongCuoi + 1).Value = Sheets("KHACHHANG").range("E6:E24").Value ' MATHANG

Bạn lưu ý là một vùng cho và vùng nhận phải có kích thước bằng nhau.

Nơi cho là vùng từ dòng 6 tới dòng 24 thì nơi nhận phải có kích thước tương tự, không phải là 1 ô ("E" & DongCuoi + 1)

2.

Nơi cho dữ liệu bạn chưa xác định đúng. Ở đây bạn đều làm việc trên cùng 1 sheet là  Sheets("KHACHHANG"), khi đó cột E là cột trong bảng dữ liệu, không phải cột trong phiếu Nhập. Bạn cần xác định lại nơi cho - nơi nhận một cách chính xác.


3. Phiếu nhập bạn nên đặt ở 1 sheet khác, ví dụ sheets("PNK")

Khi đó cần sử dụng vòng lặp để lấy dữ liệu từ Sheets("PNK") sang Sheets("KHACHHANG")

With Sheets("KHACHHANG")

Dim DongCuoi_PNK as long

DongCuoi_PNK = sheets("PNK").Range("A" & Rows.Count).End(xlUp).Row 'ví dụ Cột A là cột làm căn cứ tìm dòng cuối

Dim i as long

For i = 7 to DongCuoi_PNK   'Ví dụ dòng ghi mã hàng đầu tiên trong PNK là dòng 7

.range("B" & DongCuoi + i-6).Value = Sheets("KHACHHANG").rang("B4").Value 'ETD

 .range("C" & DongCuoi + i-6).Value = Sheets("KHACHHANG").rang("B5").Value ' BILL

.range("D" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("B6").Value ' KH

.range("E" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("A" & i).Value ' MATHANG

.range("F" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("B" & i).Value 'SL

.range("G" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("C" & i).Value ' DV TINH

.range("H" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("D" & i).Value ' THUE

.range("I" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("E" & i).Value ' USD

.range("J" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("F" & i).Value ' VN?

.range("K" & DongCuoi +  i-6).Value = Sheets("KHACHHANG").rang("G" & i).Value ' RATE

End With

Vỗ tay vỗ tay
Lê Nhã Uyên 12:11 - Nov 16, 2020

Thay oi!

E da chuyen sang sheet vaf no chay van bi loi.

Sub LUU_NHAPLIEU()

   'Tim dong cuoi Sheet KH

    Dim DongCuoi As Long

    DongCuoi = Sheets("KHACHHANG").range("C" & Rows.Count).End(xlUp).Row

With Sheets("KHACHHANG")

Dim DongCuoi_NHAPDULIEU As Long

DongCuoi_NHAPDULIEU = Sheets("NHAPDULIEU").range("A" & Rows.Count).End(xlUp).Row 'ví d? C?t A là c?t làm can c? tìm dòng cu?i

Dim i As Long

For i = 12 To DongCuoi_NHAPDULIEU   'Ví d? dòng ghi mã hàng d?u tiên trong PNK là dòng 7

.range("B" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("B4").Value 'ETD

 .range("E" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("B5").Value ' BILL

.range("F" & DongCuoi + i - 1).Value = Sheets("NHAPDULIEU").rang("B6").Value ' KH

.range("C" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("E5").Value ' POL

.range("D" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("E6").Value ' POD

.range("G" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("A" & i).Value ' MATHANG

.range("I" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("B" & i).Value 'SL

.range("H" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("C" & i).Value ' DV TINH

.range("L" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("G" & i).Value ' RATE

.range("O" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("D" & i).Value ' THUE

.range("J" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("E" & i).Value ' USD

.range("K" & DongCuoi + i - 11).Value = Sheets("NHAPDULIEU").rang("F" & i).Value ' VN?

.range("K" & DongCuoi + i - 6).Value = Sheets("NHAPDULIEU").rang("G" & i).Value ' RATE

End With

End Sub


Vỗ tay vỗ tay
Lê Nhã Uyên 14:11 - Nov 16, 2020

Chào bạn bạn xem lại vòng lặp nhé, có for mà không có next.

For i = 7 to DongCuoi_PNK

//code

next i

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