Nhờ khắc phục lỗi sau khi chèn Code VBA và viết thêm code mới

Liên hệ QC

mlink

Thành viên mới
Tham gia
18/7/14
Bài viết
6
Được thích
0
Chào các anh, các chị và các bạn. Mình loay hoay khắc phục lỗi, mãi mà vẫn không biết sai ở đâu để sửa. Mình cần dùng sớm nên chưa có thời gian để tìm đọc sách về VBA. Mong mọi người giúp đỡ mình với.
1) Mình muốn khi nhập dữ liệu vào các cột: NGÀY NHẬN HÀNG, SỐ LƯỢNG FILE, HỌ TÊN, TÊN FILE vào sheet QLFile thì các cột này cũng tự động cập nhật dữ liệu vào sheet THop, QLTGian. Mình Group theo đoạn code sau:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("MyRange"), Target) Is Nothing Then
Sheets(Array("QLFile", "QLTGian", "THop")).Select
Else
Me.Select
End If
End Sub
Khi Save file lại thì có thông báo như file ảnh. Mình chọn Yes, sau đó mở lại file ra thì code chưa chạy và view code thì không thấy code đâu nữa.
2) Tương tự với việc Group dữ liệu cho cột: PHÂN LOẠI FILE, KIỂU FILE, SỐ LƯỢNG PLAN ở sheet QLFile và sheet THop thì phải thay đổi code trên như thế nào (dữ liệu nhập vào sheet QLFile). Nếu phải viết đoạn code giống như trên thì đặt đoạncode đó trong cùng module hay đặt sang module mới?
3) Sheet DataLoi cũng có dữ liệu của 7 cột trên nhưng phải nhập dữ liệu thêm dòng cho cột NỘI DUNG LỖI. Cho mình hỏi nếu áp dụng Group như trên sau đó Insearch dòng để nhập thêm dữ liệu cho cột NỘI DUNG LỖI có được không hay có cách nào để khắc việc nhập thủ công cho 7 cột này?
 

File đính kèm

  • QLC23.xlsx
    243.4 KB · Đọc: 9
  • TB Loi.jpg
    TB Loi.jpg
    10.6 KB · Đọc: 6
Chào các anh, các chị và các bạn. Mình loay hoay khắc phục lỗi, mãi mà vẫn không biết sai ở đâu để sửa. Mình cần dùng sớm nên chưa có thời gian để tìm đọc sách về VBA. Mong mọi người giúp đỡ mình với.
1) Mình muốn khi nhập dữ liệu vào các cột: NGÀY NHẬN HÀNG, SỐ LƯỢNG FILE, HỌ TÊN, TÊN FILE vào sheet QLFile thì các cột này cũng tự động cập nhật dữ liệu vào sheet THop, QLTGian. Mình Group theo đoạn code sau:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("MyRange"), Target) Is Nothing Then
Sheets(Array("QLFile", "QLTGian", "THop")).Select
Else
Me.Select
End If
End Sub
Khi Save file lại thì có thông báo như file ảnh. Mình chọn Yes, sau đó mở lại file ra thì code chưa chạy và view code thì không thấy code đâu nữa.
2) Tương tự với việc Group dữ liệu cho cột: PHÂN LOẠI FILE, KIỂU FILE, SỐ LƯỢNG PLAN ở sheet QLFile và sheet THop thì phải thay đổi code trên như thế nào (dữ liệu nhập vào sheet QLFile). Nếu phải viết đoạn code giống như trên thì đặt đoạncode đó trong cùng module hay đặt sang module mới?
3) Sheet DataLoi cũng có dữ liệu của 7 cột trên nhưng phải nhập dữ liệu thêm dòng cho cột NỘI DUNG LỖI. Cho mình hỏi nếu áp dụng Group như trên sau đó Insearch dòng để nhập thêm dữ liệu cho cột NỘI DUNG LỖI có được không hay có cách nào để khắc việc nhập thủ công cho 7 cột này?
Dán code xong chọn Save As--->Save as type--->Excel Macro - Enabled WorkBook
 
2) Tương tự với việc Group dữ liệu cho cột: PHÂN LOẠI FILE, KIỂU FILE, SỐ LƯỢNG PLAN ở sheet QLFile và sheet THop thì phải thay đổi code trên như thế nào (dữ liệu nhập vào sheet QLFile). Nếu phải viết đoạn code giống như trên thì đặt đoạncode đó trong cùng module hay đặt sang module mới?
3) Sheet DataLoi cũng có dữ liệu của 7 cột trên nhưng phải nhập dữ liệu thêm dòng cho cột NỘI DUNG LỖI. Cho mình hỏi nếu áp dụng Group như trên sau đó Insearch dòng để nhập thêm dữ liệu cho cột NỘI DUNG LỖI có được không hay có cách nào để khắc việc nhập thủ công cho 7 cột này?
Câu hỏi 2,3 không làm được với Group sheet vì các côt ở sheet THop với DataLoi khác vị trí các cột ở QLFile bạn nên thiết kế 1 nút copy chẳng hạn khi nào nhập xong dữ liệu ở sheet QLFile thì copy dữ liệu vào 2 sheet kia.
 
Câu hỏi 2,3 không làm được với Group sheet vì các côt ở sheet THop với DataLoi khác vị trí các cột ở QLFile bạn nên thiết kế 1 nút copy chẳng hạn khi nào nhập xong dữ liệu ở sheet QLFile thì copy dữ liệu vào 2 sheet kia.

Bạn giúp mình viết câu lệnh hay code cho nút copy này được không? Cám ơn bạn rất nhiều
 
Bạn giúp mình viết câu lệnh hay code cho nút copy này được không? Cám ơn bạn rất nhiều
Mình đã tạo được nút copy 3 cột từ sheet QLFile sang sheet THop rồi, nhưng để copy 7 cột sang sheet DataLoi thì không biết phải làm sao. Mình đang bị mắc kẹt ở chỗ này. Giúp mình với.
 
Nếu để tự động cập nhật bạn thử dùng code sau xem sao (Mình test thấy ổn)

Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim SName(), i
SName = Array(Sheet1.Name, Sheet3.Name, Sheet4.Name)
For i = LBound(SName) To UBound(SName)
Worksheets(SName(i)).Range(Target.Address) = Target.Value
Next
End Sub
 
Nếu để tự động cập nhật bạn thử dùng code sau xem sao (Mình test thấy ổn)

Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim SName(), i
SName = Array(Sheet1.Name, Sheet3.Name, Sheet4.Name)
For i = LBound(SName) To UBound(SName)
Worksheets(SName(i)).Range(Target.Address) = Target.Value
Next
End Sub
Cám ơn bạn đã giúp mình. Bạn giải thích giúp mình đoạn code trên bạn viết để tự động update dữ liệu từ sheet nào đến sheet nào không? Vì mình đã test thử nhưng khi nhập dữ liệu vào sheet QLFile thì dữ liệu không tự động update vào sheet THop, sheet QLTGian thì có một số dòng trong cột HỌ VÀ TÊN và TÊN FILE không tự update. Hơn nữa các cột: PHÂN LOẠI FILE, KIỂU FILE, SỐ LƯỢNG PLAN không có trong sheet QLTGian thì lại tự động update vào. Bạn test thử thấy ok thì không biết mình đã làm sai ở bước nào. Bạn có thể gửi file bạn đã test cho mình xem? Nhưng điều quan trọng là mình muốn update tự động dữ liệu của 7 cột này vào sheet DataLoi mà không ảnh hưởng đến việc nhập nhiều hàng dữ liệu trong cột NỘI DUNG LỖI. Có cách nào làm không bạn hay mình vẫn phải làm thủ công?
 
Cám ơn bạn đã giúp mình. Bạn giải thích giúp mình đoạn code trên bạn viết để tự động update dữ liệu từ sheet nào đến sheet nào không? Vì mình đã test thử nhưng khi nhập dữ liệu vào sheet QLFile thì dữ liệu không tự động update vào sheet THop, sheet QLTGian thì có một số dòng trong cột HỌ VÀ TÊN và TÊN FILE không tự update. Hơn nữa các cột: PHÂN LOẠI FILE, KIỂU FILE, SỐ LƯỢNG PLAN không có trong sheet QLTGian thì lại tự động update vào. Bạn test thử thấy ok thì không biết mình đã làm sai ở bước nào. Bạn có thể gửi file bạn đã test cho mình xem? Nhưng điều quan trọng là mình muốn update tự động dữ liệu của 7 cột này vào sheet DataLoi mà không ảnh hưởng đến việc nhập nhiều hàng dữ liệu trong cột NỘI DUNG LỖI. Có cách nào làm không bạn hay mình vẫn phải làm thủ công?

Tôi có thiết kế 2 nút lệnh copy ở sheet QLFile khi nào bạn nhập dữ liệu xong muốn chuyển dữ liệu sang sheet THop hoặc Dataloi thì nhấn nút đó.
 

File đính kèm

  • QLC23.xlsm
    257 KB · Đọc: 5
Tôi có thiết kế 2 nút lệnh copy ở sheet QLFile khi nào bạn nhập dữ liệu xong muốn chuyển dữ liệu sang sheet THop hoặc Dataloi thì nhấn nút đó.
Nút copy sang Dataloi bị copy thừa 2 cột ở giữa nên dữ liệu bị ghi chèn sang 2 cột tiếp theo, mình sẽ sửa lại. Cám ơn bạn nhé!
 
Web KT

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

Back
Top Bottom