Bị lỗi lưu xuống sheet, khi trong listbox có dòng trống

Liên hệ QC

AnhThu-1976

Thành viên tích cực
Tham gia
17/10/14
Bài viết
1,058
Được thích
170
Em nhờ Thầy/Cô, anh/chị giúp đỡ sửa code cho trường hợp sau, em mô tả bị lỗi
Tại sheet TH, từ ô 'D9 trở xuống, ta DoubleClick thì hiện form
ta cứ chọn 1, rồi trong text box tìm kiếm ta nhập số 2, nhưng ta chọn 1 dòng trống bất kỳ bên dưới rồi ta chọn số 12 sau đó bấm LUU DU LIEU (giống như hình) thì bị báo lỗi "run time error13"
************
Vậy chúng ta phải sửa code sao (trong trường hợp vô tình bấm vào dòng trống) thì khi lưu xuống sheet thì vẫn lưu bình thường và không bị báo lỗi
Em xin cảm ơn nhiều!
 

File đính kèm

  • loiloi.png
    loiloi.png
    228.4 KB · Đọc: 19
  • BODONGTRONG-1.xlsm
    4.2 MB · Đọc: 8
Cho em hỏi có cách nào không cho chọn dòng trống ở Listbox ở trên không?
 
Upvote 0
Cho em hỏi có cách nào không cho chọn dòng trống ở Listbox ở trên không?
Em nhờ Thầy/Cô, anh/chị giúp đỡ sửa code cho trường hợp sau, em mô tả bị lỗi
Tại sheet TH, từ ô 'D9 trở xuống, ta DoubleClick thì hiện form
ta cứ chọn 1, rồi trong text box tìm kiếm ta nhập số 2, nhưng ta chọn 1 dòng trống bất kỳ bên dưới rồi ta chọn số 12 sau đó bấm LUU DU LIEU (giống như hình) thì bị báo lỗi "run time error13"
************
Vậy chúng ta phải sửa code sao (trong trường hợp vô tình bấm vào dòng trống) thì khi lưu xuống sheet thì vẫn lưu bình thường và không bị báo lỗi
Em xin cảm ơn nhiều!
Bài của bạn 2 phương án giải quyết.
Phương án 1 bạn viết code tìm kiếm khi tìm kiếm trên mảng thì bạn chạy thêm 1 vòng lặp nữa để bỏ những dòng trống đi.Lỗi này là do bạn Redim nó quá nhiều.
Phương án 2 là kiểm tra điều kiện để chạy được đoạn code.Ví dụ bạn kiểm tra vị trí listbox kia nếu nó không có dữ liệu thì không chạy code nữa.
 
Upvote 0
Bài của bạn 2 phương án giải quyết.
Phương án 1 bạn viết code tìm kiếm khi tìm kiếm trên mảng thì bạn chạy thêm 1 vòng lặp nữa để bỏ những dòng trống đi.Lỗi này là do bạn Redim nó quá nhiều.
Phương án 2 là kiểm tra điều kiện để chạy được đoạn code.Ví dụ bạn kiểm tra vị trí listbox kia nếu nó không có dữ liệu thì không chạy code nữa.
Nhờ bạn giúp đỡ nhé
code trên cũng do các thầy, cô, anh chị viếp giúp, chứ mình không rành nhiều về code
 
Upvote 0
Kính nhờ các Thầy/cô, anh/chị giúp em bài 1
Em có thử linh tinh nhưng không được
Em cảm ơn!
 
Upvote 0
Kính nhờ các Thầy/cô, anh/chị giúp em bài 1
Em có thử linh tinh nhưng không được
Em cảm ơn!
Chỗ này
Mã:
Private Sub CmdLuu_Click()
    Dim lRw As Long, j As Long
bạn thêm
Mã:
Private Sub CmdLuu_Click()
    Dim lRw As Long, j As Long
    On Error Resume Next 'them cau lenh nay

Chú ý là nó lưu bất chấp đấy, tôi chưa dò code
 
Upvote 0
Chỗ này
Mã:
Private Sub CmdLuu_Click()
    Dim lRw As Long, j As Long
bạn thêm
Mã:
Private Sub CmdLuu_Click()
    Dim lRw As Long, j As Long
    On Error Resume Next 'them cau lenh nay

Chú ý là nó lưu bất chấp đấy, tôi chưa dò code
Cách này cũng OK
có cách nào nó xóa dòng trống, trước khi gán xuống sheet thì càng tốt => rất mong được giúp đỡ thêm ạ!
 
Upvote 0
Cách này cũng OK
có cách nào nó xóa dòng trống, trước khi gán xuống sheet thì càng tốt => rất mong được giúp đỡ thêm ạ!
Bạn tìm trong code đoạn nào gán dữ liệu xuống sheet thì thêm phần xoá dữ liệu (điều kiện ô, vùng nào đó rỗng) vào phía trước nha!
 
Upvote 0
Cách này cũng OK
có cách nào nó xóa dòng trống, trước khi gán xuống sheet thì càng tốt => rất mong được giúp đỡ thêm ạ!
Xóa luôn từ kết quả khi bạn điền vào litstbox.Mà cái tìm kiếm của bạn có vấn đề nó có thể bị lặp kết quả.Nếu điều kiện cùng thỏa mãn.Đang tính sửa nhưng thôi.
 
Upvote 0
Bạn tìm trong code đoạn nào gán dữ liệu xuống sheet thì thêm phần xoá dữ liệu (điều kiện ô, vùng nào đó rỗng) vào phía trước nha!
Mình biết đoạn code này gán xuống sheet nhưng không biết thêm code chỗ nào để xóa dòng list box nào (bị trống) trước khi gán xuống sheet
Mong các anh/chị hướng dẫn thêm
[\code]
'PHÂÌN 2: MÕìI HOÌAN TOAÌN + THÊM: cmdLuu (CommandButton) vaÌ lbSelect (ListBox)
Private Sub CmdLuu_Click()
Dim lRw As Long, j As Long
On Error Resume Next ''''''''''''''''''''''''''''''''''''' 06/02/23
With Sheets("TH")
' lRw = .[AH65500].End(xlUp).Row
lRw = ActiveCell.Row - 1 'sýÒa ðêÒ giaìn xuôìng cell hiêòn haÌnh
For j = 1 To SeL
' TýÌ lbSelect (ListBox) gaìn xuôìng sheet ðiìch õÒ caìc côòt D,E,F,H,K (nêìu không muôìn gaìn thiÌ boÒ)
.Cells(lRw + j, "D").Value = Me!lbSelect.List(j, 0)
.Cells(lRw + j, "E").Value = Me!lbSelect.List(j, 1)
.Cells(lRw + j, "F").Value = Me!lbSelect.List(j, 2)
.Cells(lRw + j, "H").Value = CDbl(Replace(Me!lbSelect.List(j, 3), Mid(Format(1234, "#,##0.00"), 2, 1), ""))

.Cells(lRw + j, "K").Value = Me!lbSelect.List(j, 4)
Next j
'*********** them 17/05/2022
'**************
ActiveCell.Offset(, 3).Select 'thêm: doÌi qua côòt ...
'MsgBox "Nhâp Xong! Muon thoìat Form thiÌ bam nut THOAT"
For j = 1 To SeL
Me!lbSelect.List(j, 0) = ""
Me!lbSelect.List(j, 1) = ""
Me!lbSelect.List(j, 2) = ""
Me!lbSelect.List(j, 3) = ""
Me!lbSelect.List(j, 4) = ""
Me!lbSelect.List(j, 5) = ""
Next j
SeL = 0
Unload Me ' them
End With
ActiveWorkbook.Save ' 20/11/22
End Sub
[code/]
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom