Xin các bác hỗ trợ giúp, mình muốn code "ClearContents" có điều kiện ạ!

Liên hệ QC

Ldh1984

Thành viên chính thức
Tham gia
18/7/21
Bài viết
55
Được thích
7
Em có file Excel như sau:
có cột số thư tự (STT) và cột "Ngày"
Yêu cầu: - khi nhập tại cột "Ngày" đến số thứ tự 21 thì sẽ xóa hết cột "Ngày để nhập lại từ đầu ^^.
Mong các cao nhân giúp ạ, chân thành cảm ơn.
 

File đính kèm

  • Book2.xlsx
    11.5 KB · Đọc: 4
sao vậy? Khi nhập đến ô B25 enter thì ns sẽ xóa hết Từ B4:B24 mà.
nó chạy rồi, nhưng mình phải dùng phím xuống dòng thì nó mới xóa, còn mình đã tạo nút nhập phía trên mình ấn nút thì nó tự động nhập ngày hiện tại vào, khi nhập qua dòng số 24 nó không hiểu lệnh xóa tự động ban ơi.
Bài đã được tự động gộp:

mình có ý này, tại ô B2 trong file đã gửi mình có dùng công thức COUNTA(B3:B25)-1, điều kiện khi B2>21 thì xóa từ B4:B24 và không thực hiện lệnh in nữa.
 

File đính kèm

  • Book2.xlsm
    21.7 KB · Đọc: 3
Lần chỉnh sửa cuối:
Upvote 0
nó chạy rồi, nhưng mình phải dùng phím xuống dòng thì nó mới xóa, còn mình đã tạo nút nhập phía trên mình ấn nút thì nó tự động nhập ngày hiện tại vào, khi nhập qua dòng số 24 nó không hiểu lệnh xóa tự động ban ơi.
Bài đã được tự động gộp:

mình có ý này, tại ô B2 trong file đã gửi mình có dùng công thức COUNTA(B3:B25)-1, điều kiện khi B2>21 thì xóa từ B4:B24 và không thực hiện lệnh in nữa.
Khổ cái là bạn không đưa ra ý muốn và file đính kèm cụ thể.
Như file bạn Up lện thì bạn thay code cũ bằng code này (vẫn là code của bạn có sửa tý chút)
Mã:
Sub InG_N()

Dim form As Worksheet
Dim G_N As Worksheet

Set G_N = ThisWorkbook.Sheets("G_N")

''''''''''copy danh sach''''''''
Dim hang_cuoi As Long
hang_cuoi = G_N.Range("B2").Value + 4

If hang_cuoi < 25 Then

G_N.Range("B" & hang_cuoi).Value = G_N.Range("B1").Value

''''''''iN DU LIEU'''''''
On Error GoTo baoloi:
    G_N.Select
    ActiveWindow.SelectedSheets.PrintOut From:=1, to:=1, Copies:=1, Collate:=True
    Else
    G_N.Range("B4:B25").ClearContents
End If
baoloi:

''''''''XOA DU LIEU'''''''

End Sub
Chúc Khỏe, vui thành công và an toàn trong đại dịch
 
Upvote 0
Khổ cái là bạn không đưa ra ý muốn và file đính kèm cụ thể.
Như file bạn Up lện thì bạn thay code cũ bằng code này (vẫn là code của bạn có sửa tý chút)
Mã:
Sub InG_N()

Dim form As Worksheet
Dim G_N As Worksheet

Set G_N = ThisWorkbook.Sheets("G_N")

''''''''''copy danh sach''''''''
Dim hang_cuoi As Long
hang_cuoi = G_N.Range("B2").Value + 4

If hang_cuoi < 25 Then

G_N.Range("B" & hang_cuoi).Value = G_N.Range("B1").Value

''''''''iN DU LIEU'''''''
On Error GoTo baoloi:
    G_N.Select
    ActiveWindow.SelectedSheets.PrintOut From:=1, to:=1, Copies:=1, Collate:=True
    Else
    G_N.Range("B4:B25").ClearContents
End If
baoloi:

''''''''XOA DU LIEU'''''''

End Sub
Chúc Khỏe, vui thành công và an toàn trong đại dịch
Chân thành cảm ơn bác nhiều, để mình chạy và báo cáo kết quả nhanh ^^
Bài đã được tự động gộp:

Khổ cái là bạn không đưa ra ý muốn và file đính kèm cụ thể.
Như file bạn Up lện thì bạn thay code cũ bằng code này (vẫn là code của bạn có sửa tý chút)
Mã:
Sub InG_N()

Dim form As Worksheet
Dim G_N As Worksheet

Set G_N = ThisWorkbook.Sheets("G_N")

''''''''''copy danh sach''''''''
Dim hang_cuoi As Long
hang_cuoi = G_N.Range("B2").Value + 4

If hang_cuoi < 25 Then

G_N.Range("B" & hang_cuoi).Value = G_N.Range("B1").Value

''''''''iN DU LIEU'''''''
On Error GoTo baoloi:
    G_N.Select
    ActiveWindow.SelectedSheets.PrintOut From:=1, to:=1, Copies:=1, Collate:=True
    Else
    G_N.Range("B4:B25").ClearContents
End If
baoloi:

''''''''XOA DU LIEU'''''''

End Sub
Chúc Khỏe, vui thành công và an toàn trong đại dịch
Đã chạy thành công và đúng ý rồi bác ơi, hết dịch có dịp mời bác nhậu nhé ^^ chân thành cảm ơn rất nhiều và rất nhiều.
 
Lần chỉnh sửa cuối:
Upvote 0
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$B$25" Then Range("B4:B24").ClearContents
If Me.Range("B4").Value = "" Then
Me.Range("B25").ClearContents
'Me.Range("B4").Select
End If
End Sub
sửa thêm chút là được mà nhỉ :D
 
Upvote 0
Chân thành cảm ơn bác nhiều, để mình chạy và báo cáo kết quả nhanh ^^
Bài đã được tự động gộp:


Đã chạy thành công và đúng ý rồi bác ơi, hết dịch có dịp mời bác nhậu nhé ^^ chân thành cảm ơn rất nhiều và rất nhiều.
Cảm ơn bạn nhé! Nghe thấy có nhậu là mình "mừng" rồi. Mình bị tai biến nhẹ nên không có nhiều hứng thú với rượi, bia.
Mà bạn ở đâu mà mời mình nhậu đấy?- Mình ở Nghệ An cơ mà.
 
Upvote 0
Cảm ơn bạn nhé! Nghe thấy có nhậu là mình "mừng" rồi. Mình bị tai biến nhẹ nên không có nhiều hứng thú với rượi, bia.
Mà bạn ở đâu mà mời mình nhậu đấy?- Mình ở Nghệ An cơ mà.
xa vại, mình ở Quy Nhơn, khi nào hết dịch bác ghé chơi giao lưu nhé. Không bia rượu thì cafe trà nước cũng đc mà ^^
 
Upvote 0
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$B$25" Then Range("B4:B24").ClearContents
If Me.Range("B4").Value = "" Then
Me.Range("B25").ClearContents
'Me.Range("B4").Select
End If
End Sub
sửa thêm chút là được mà nhỉ :D
Quá đã tối nay mừng ghê ^^ mình có được 2 bác hướng dẫn rất nhiệt tình, cảm ơn bạn rất nhiều về code trên nhé, rất ổn định.
 
Upvote 0
Web KT
Back
Top Bottom