Macro chạy liên tục trong giới hạn

Liên hệ QC

hiénlinh197

Thành viên tiêu biểu
Tham gia
26/5/09
Bài viết
491
Được thích
113
Nhờ các bạn trên diễn đàn viết giúp code như trong file đính kèm
Cảm ơn các bạn!
 

File đính kèm

  • copy hay(hỎI).xlsm
    25.7 KB · Đọc: 8
Vậy tôi sửa trên code của bạn nhé!
Mã:
Sub VD()
Dim I As Long
'Hoặc Sheets("NHAP").[F6]=Sheets("NHAP").[F6]+1
For I = Sheets("NHAP").[F7] To Sheets("NHAP").[G7]
Sheets("NHAP").[F6]=I 'Nếu không đúng thì bỏ chổ này thay bằng chổ ở trên.
Call Thu_ty
Next
End Sub
Cảm ơn bạn
giaiphap
Đúng rồi bạn à, nhưng mình thấy số lần chạy code vẫn chưa đúng theo giới hạn của ô F7 và ô G7
Bạn Chỉnh cho mình chỗ này là ok
Bài đã được tự động gộp:

Uầy! Cái vấn đề rất quan trọng mà bạn nói đến thì thực ra lại rất đơn giản, chỉ là gán cho ô F6 bằng giá trị của biến chạy trong vòng For là được thôi.
Đại loại là: Sheet1.[F6]=i
Khổ quá bạn
nghiaphuc
ơi, Macro đối với mình thì ngu ngơ lắm mình nghiên cứu đã lâu roài, nhưng mà bây giờ đọc code còn không hiểu hết ý nghĩa, nên mình không biết sửa các dòng lện bạn à.
Môn VBA đối với mình quá khó, và quá trìu tượng
 
Upvote 0
Cảm ơn bạn
giaiphap
Đúng rồi bạn à, nhưng mình thấy số lần chạy code vẫn chưa đúng theo giới hạn của ô F7 và ô G7
Bạn Chỉnh cho mình chỗ này là ok
Tức là sai chổ nào? như thế nào mới đúng? Cũng bạn không chứ tôi có nói gì đâu, bạn cho là code của bạn đúng rồi tôi có sửa code bạn chổ nào đâu, chỉ thêm cái bạn cần chứ không hề xóa miếng code nào của bạn cả.
 
Upvote 0
Cảm ơn bạn
giaiphap
Đúng rồi bạn à, nhưng mình thấy số lần chạy code vẫn chưa đúng theo giới hạn của ô F7 và ô G7
Bạn Chỉnh cho mình chỗ này là ok
Nếu bạn muốn ô F6 nhận giá trị trong đoạn từ F7 đến G7 thì gán như trong code, còn nếu bạn muốn giá trị ô F6 luôn bắt đầu từ số 1, bất kể là F7 bằng mấy thì bạn có thể gán Sheet1.[F6]=i-Sheet1.[F7]+1 hoặc là trước vòng For, gán Sheet1.[F6]=0, trong vòng For thêm câu lệnh Sheet1.[F6]=Sheet1.[F6]+1
Hoặc là cách khác: Giữ nguyên code trên, nhưng thay câu
Mã:
For I = Sheets("NHAP").[F7] To Sheets("NHAP").[G7]
bởi câu
Mã:
For I = 1 to Sheets("NHAP").[G7] - Sheets("NHAP").[F7]+1
 
Upvote 0
Tức là sai chổ nào? như thế nào mới đúng? Cũng bạn không chứ tôi có nói gì đâu, bạn cho là code của bạn đúng rồi tôi có sửa code bạn chổ nào đâu, chỉ thêm cái bạn cần chứ không hề xóa miếng code nào của bạn cả.
Ví dụ như code copy trong file thì khi chạy code xong thì số lần copy chưa đúng bạn à, bạn xem lại giúp mình nhé
Ví dụ mình để trong file bạn kiểm tra giúp
Bài đã được tự động gộp:

Nếu bạn muốn ô F6 nhận giá trị trong đoạn từ F7 đến G7 thì gán như trong code, còn nếu bạn muốn giá trị ô F6 luôn bắt đầu từ số 1, bất kể là F7 bằng mấy thì bạn có thể gán Sheet1.[F6]=i-Sheet1.[F7]+1 hoặc là trước vòng For, gán Sheet1.[F6]=0, trong vòng For thêm câu lệnh Sheet1.[F6]=Sheet1.[F6]+1
Hoặc là cách khác: Giữ nguyên code trên, nhưng thay câu
Mã:
For I = Sheets("NHAP").[F7] To Sheets("NHAP").[G7]
bởi câu
Mã:
For I = 1 to Sheets("NHAP").[G7] - Sheets("NHAP").[F7]+1
Cảm ơn bạn
nghiaphuc
giaiphap

Và tất cả các bạn
Đã giúp đỡ, code chạy đã đúng rồi, số lần không đúng là do cập nhật nhanh quá
 

File đính kèm

  • copy hay(hỎI).xlsm
    27.5 KB · Đọc: 1
Lần chỉnh sửa cuối:
Upvote 0
Ví dụ như code copy trong file thì khi chạy code xong thì số lần copy chưa đúng bạn à, bạn xem lại giúp mình nhé
Ví dụ mình để trong file bạn kiểm tra giúp
Bài đã được tự động gộp:


Cảm ơn bạn
nghiaphuc
giaiphap

Và tất cả các bạn
Đã giúp đỡ, code chạy đã đúng rồi, số lần không đúng là do cập nhật nhanh quá
bạn nói sao chứ mình chạy code nó chạy đủ số lần mà, bạn xem lại file.
 

File đính kèm

  • copy hay(hỎI) (3).xlsm
    29.8 KB · Đọc: 3
Upvote 0
Web KT
Back
Top Bottom