Xin code VBA cho file nhập liệu

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

TTCLONETNL

Thành viên mới
Tham gia
20/10/23
Bài viết
1
Được thích
0
Chào anh chị em trong diễn đàn excel, Xin nhờ các anh chị giúp đỡ em file excel mẫu như sau:
Sheet: Main
Sheet: Nhaplieu
E đang tìm cách để nhập liệu từng dòng (bên sheet NhapLieu) sang dạng cột ở Sheet Main và điền số lượng theo điều kiện dòng ở sheet Main, cứ 1 phiếu là 1 cột nối tiếp cho tới khi hết dòng nhập liệu
Nên nhờ anh chị em giúp đỡ viết code VBA để thực hiện được công việc.

Cảm ơn anh chị em trong diễn đàn nhiều

Nếu sai chuyên mục, nhờ Admin chuyển sang đúng chuyên mục giùm em nhé!
 

File đính kèm

  • test 13-10.xlsm
    314.1 KB · Đọc: 34
Chuyên mục thì đúng rồi nhưng chắc là bài khó quá nên không có người làm :{{
 
Upvote 0
Chào anh chị em trong diễn đàn excel, Xin nhờ các anh chị giúp đỡ em file excel mẫu như sau:
Sheet: Main
Sheet: Nhaplieu
E đang tìm cách để nhập liệu từng dòng (bên sheet NhapLieu) sang dạng cột ở Sheet Main và điền số lượng theo điều kiện dòng ở sheet Main, cứ 1 phiếu là 1 cột nối tiếp cho tới khi hết dòng nhập liệu
Nên nhờ anh chị em giúp đỡ viết code VBA để thực hiện được công việc.

Cảm ơn anh chị em trong diễn đàn nhiều

Nếu sai chuyên mục, nhờ Admin chuyển sang đúng chuyên mục giùm em nhé!
Bạn thử code này xem ntn trong khi chờ người khác đưa ra giải pháp nha, mình cũng tay mơ mới tự học VBA thôi.
Option Explicit
Sub LUU_DATA()
Application.ScreenUpdating = False
Dim I, Z, X, LR_NHAP As Long
Dim ARR_N(), KQ()

LR_NHAP = ShtNhap.Range("A" & Rows.Count).End(xlUp).Row
ARR_N = ShtNhap.Range("A6:M" & LR_NHAP).Value
ReDim KQ(1 To UBound(ARR_N, 1), 1 To 14)
Z = 0

For I = 1 To UBound(ARR_N, 1)
If ARR_N(I, 1) <> "" Then
Z = Z + 1
With ShtNhap
KQ(Z, 1) = ARR_N(I, 5)
KQ(Z, 2) = ARR_N(I, 6)
KQ(Z, 3) = ARR_N(I, 7)
KQ(Z, 4) = ARR_N(I, 8)
KQ(Z, 5) = ARR_N(I, 9)
KQ(Z, 6) = ARR_N(I, 10)
KQ(Z, 7) = ARR_N(I, 11)
KQ(Z, 12) = ARR_N(I, 12)

Select Case ARR_N(I, 1)
Case "Nhap"
KQ(Z, 9) = ARR_N(I, 13)
Case "Xuat"
KQ(Z, 10) = ARR_N(I, 13)
End Select
End With
End If
Next I

With ShtMain
If Z > 0 Then
.Range("A5:N5000").ClearContents
.Range("A5").Resize(Z, 14).Value = KQ
Else
MsgBox "ERROR !!!", vbCritical
Exit Sub
End If
End With
MsgBox "Ðã Xong !!!", vbInformation
Application.ScreenUpdating = True
End Sub
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom