Huỳnh hoài bảo
Huỳnh hoài bảo
Thảo luận 4 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 179 lượt xem

ngăn ngừa khi file đã chọn đã copy dữ liệu xong thì VBA sẽ không cho phép

Nhờ thầy hướng dẫn cách ngăn ngừa khi file đã chọn, đã copy dữ liệu xong thì VBA sẽ không cho phép chọn nữa như thầy đã nói cuối bài giảng . Không biết các đoạn code viết thế nào???

Thảo luận 4 câu trả lời
Lượt xem 179 lượt xem
Vỗ tay vỗ tay
Huỳnh hoài bảo 09:09 - Sep 14, 2020

Chào bạn việc ngăn ngừa file đã chọn rất khó nhưng việc lấy dữ liệu ở file chọn nếu đã có sẽ không lấy lại lần 2 thì đơn giản hơn.

Trong file đã chọn sẽ có 1 trường là duy nhất ở có thể là tháng.

Ta cần so sánh tháng với tháng đã có cái này có thể dùng countif để so nếu tháng >=1 ta không lấy dữ liệu, ngược lại ta sẽ lấy dữ liệu.

Vỗ tay vỗ tay
Huỳnh hoài bảo 11:09 - Sep 14, 2020

bạn có thể thêm 1 lệnh so sánh xem dữ liệu đã tồn tại chưa, nếu đã tồn tại thì bỏ qua, không lấy dữ liệu nữa.

Bạn sử dụng hàm COUNTIF trong VBA để đếm như sau:

IF Application.WorksheetFunction.COUNTIF(Range("A3:A" & lr), 1)=0 then

   'lệnh copy dữ liệu tháng 1

End if

(tức là nếu đếm countif mà lớn hơn 0 thì đã có dữ liệu tháng 1, sẽ không làm lệnh copy dữ liệu tháng 1 nữa.

trong đó: Bắt đầu đếm từ ô A3, đếm trong vùng từ A3 tới dòng cuối có dữ liệu cột A (lr là biến dòng cuối đã xác định trước đó)

Vỗ tay vỗ tay
Huỳnh hoài bảo 10:01 - Jan 15, 2021

thầy ơi phải là bắt đầu từ ô A6 chứ ạ? vì từ A6 mới là vùng bắt đầu nhận dữ liệu từ các file chi tiết

Vỗ tay vỗ tay
Huỳnh hoài bảo 10:01 - Jan 15, 2021

Chào bạn vùng bắt đầu bạn có thể thay đổi sao phù hợp file bạn đang làm.

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