Xin giúp sửa code VBA

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

Hongduc39hnk

Thành viên mới
Tham gia
2/1/23
Bài viết
6
Được thích
2
MN sửa giúp em code này với ạ. E muốn khi ô trống thì điền dấu "-" còn nếu ô có giá trị thì không điền. Mà code của em nó điền được lúc đầu, sau khi thử nhập giá trị vào 1 ô bất kỳ xong xoa đi nó vẫn ko tư điền dấu "-" lại

Private Sub Worksheet_Change(ByVal Target As Range)
If WorksheetFunction.CountA(Cells.Range("G5:L25")) = 0 Then
Cells.Range("G5:L25").Value = "-"
End If
End Sub
Bài đã được tự động gộp:


Bài đã được tự động gộp:

 

File đính kèm

  • FIle code1.xlsm
    16.4 KB · Đọc: 9
MN sửa giúp em code này với ạ. E muốn khi ô trống thì điền dấu "-" còn nếu ô có giá trị thì không điền. Mà code của em nó điền được lúc đầu, sau khi thử nhập giá trị vào 1 ô bất kỳ xong xoa đi nó vẫn ko tư điền dấu "-" lại
Sửa mấy từ viết tắt đi đã nào. Rồi mình tính tiếp nhé
 
Upvote 0
Theo minh bạn khoan dùng Code bạn định dạng trang tính. Bạn nên định dạng theo ý muốn sau đó bạn ghi lại macro bạn hiễu dần
 
Upvote 0
MN sửa giúp em code này với ạ. E muốn khi ô trống thì điền dấu "-" còn nếu ô có giá trị thì không điền. Mà code của em nó điền được lúc đầu, sau khi thử nhập giá trị vào 1 ô bất kỳ xong xoa đi nó vẫn ko tư điền dấu "-" lại

Private Sub Worksheet_Change(ByVal Target As Range)
If WorksheetFunction.CountA(Cells.Range("G5:L25")) = 0 Then
Cells.Range("G5:L25").Value = "-"
End If
End Sub
Bài đã được tự động gộp:


Bài đã được tự động gộp:
Ơ, mâm cũ vừa xong đã làm mâm mới rồi à. Thế là công cốc rồi.
Mà thôi xong, kiểu này đúng ý bác PTM zồi. Ván này mình dựa cột nghe đã.

PS: Sửa nội quy theo hướng dẫn kìa.
 
Upvote 0
Sửa mấy từ viết tắt đi đã nào. Rồi mình tính tiếp nhé
Không mợ chợ cũng đông.
Mà hình như dạo này tôi thấy có người cố tình, bên hỏi lẫn bên trả lời.

Ơ, mâm cũ vừa xong đã làm mâm mới rồi à. Thế là công cốc rồi.
Mà thôi xong, kiểu này đúng ý bác PTM zồi. Ván này mình dựa cột nghe đã.
...
Nếu là tôi thì bạn khỏi dựa cột hay lót dép gì cả.
Kiểu nhờ chỉnh code như vầy thì chỉ có người ghiền mới giúp.
Bất cứ ai cũng thấy rõ là thtws cần học vài bài căn bản về debug code.
(tôi không nói đặt break, xét cửa sổ biến chi cho cao siêu; chỉ giản dị đặt MsgBox một vài chỗ để tự xem code mình chạy ra sao thôi. Cách debug căn bản nhất)
 
Lần chỉnh sửa cuối:
Upvote 0
Debug mà trong sự kiện thì em cũng không biết làm thế nào. Chỉ có chạy lỗi thì nó báo vàng. Còn nó treo máy thì bó tay không hiểu vì sao. Cái món sự kiện này em dính suốt. Cạch nó luôn.
Còn tác giả đang làm theo kiểu cuốn chiếu hay sao ấy. Có kết quả xong mới đưa ra nhu cầu thật hoặc sẽ thật. Cách hỏi làm cho người khác có cảm giác bị dẫn dắt.
 
Upvote 0
Debug mà trong sự kiện thì em cũng không biết làm thế nào. Chỉ có chạy lỗi thì nó báo vàng. Còn nó treo máy thì bó tay không hiểu vì sao. Cái món sự kiện này em dính suốt. Cạch nó luôn.
Còn tác giả đang làm theo kiểu cuốn chiếu hay sao ấy. Có kết quả xong mới đưa ra nhu cầu thật hoặc sẽ thật. Cách hỏi làm cho người khác có cảm giác bị dẫn dắt.
Treo vì lặp vô hạn
 
Upvote 0
Lỗi lặp vô hạn vì khi điền "-" vào thì lại kích hoạt sự kiện Change nữa. Vì vậy phải tắt sự kiện đi
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If intersect(target,Range("G5:L25")) is nothing then exit sub ' giới hạn sự kiện trong vùng cho trước
If WorksheetFunction.CountA(Cells.Range("G5:L25")) = 0 Then
Application.EnableEvents = false ' tắt sự kiện change
Cells.Range("G5:L25").Value = "-"
Application.EnableEvents = true' mở sự kiện change
End If
End Sub
 
Upvote 0
Debug mà trong sự kiện thì em cũng không biết làm thế nào. ...
Ở trên tôi có nói rõ là đâu có càn sâu xa. Trâu bò thôi cũng được.

Trong cái Sub trên, mới vào sub, đặt câu:
MsgBox "Vao su kien"
Bên trong block If đặt:
MsgBox "Ben trong If"

Sau khi chạy mà thấy mấy cái msgbox hiện ra khiông như ý thì thêm này thêm nọ.
 
Upvote 0
Ở trên tôi có nói rõ là đâu có càn sâu xa. Trâu bò thôi cũng được.

Trong cái Sub trên, mới vào sub, đặt câu:
MsgBox "Vao su kien"
Bên trong block If đặt:
MsgBox "Ben trong If"

Sau khi chạy mà thấy mấy cái msgbox hiện ra khiông như ý thì thêm này thêm nọ.
Món đặt MsgBox của bác hay phết.
Đây quả là bí kíp gia truyền. _)(#; _)(#; _)(#;
 

File đính kèm

  • 1673352786990.png
    1673352786990.png
    6.2 KB · Đọc: 10
Upvote 0
Web KT

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

Back
Top Bottom