[ Help] Không biết lỗi 1004 này là tại làm sao???

  • Thread starter Deleted member 1885
  • Ngày gửi
Trạng thái
Không mở trả lời sau này.
D

Deleted member 1885

Guest
Dim rnglistdai As Range
Dim ws As Worksheet

Set ws = ThisWorkbook.Worksheets("sheet2")
Set rnglistdai = ws.Range("A2", Range("A1")).End(xlDown)

Chỉ mới có set cái range vào chứ chưa có làm gì hết là nó ra lỗi 1004 script code out range. Trang sheet2 cung vẫn đang clean ko có dữ liệu gì.
Xin hướng dẫn giúp mình vì sao đoạn code trên lại ra lỗi @@
 

NhanSu

SMod
Thành viên BQT
Code của bạn có lỗi Range("A2",range("A1")).End(xlDown) cần sửa lại thành Range("A2",range("A1").End(xlDown)) lý do ô A2 nằm dưới A1.
Ngoài ra nếu ws không phải là activesheet thì câu lệnh còn lỗi do range("A1") nằm ở activesheet trong khi ws là sheet khác. Vì thế câu lệnh cần sửa thành ws.Range("A2",ws.range("A1").End(xlDown))
 
D

Deleted member 1885

Guest
Cho mình hỏi thêm 1 câu nữa. Mình có vấn đề trong việc xử lý chuỗi dữ liệu ở đằng sau có nhiều dấu" ...... " không xác định số lượng. Và mình không muốn điều này xảy ra trong chuỗi dữ liệu của mình. Mình đã xét trường hợp cho nó là "." và "..." nhưng khi nó chạy thì ko ưng ý lắm vì khi n = "..." thì nó lại bỏ qua điều kiện của mình đưa ra. Mình không hiểu, dù là đã chuyển sang chrW code để bắt khi n = "..." nó vẫn ko vào. Xin bạn hướng dẫn giúp mình là tại vì sao?
Code:

For i = Len(dulieu) To 1 Step -1
n = Mid(dulieu, i, 1)

If n = ChrW(46) Or n = ChrW(133) Then
dulieu= Mid(dulieu, 1, Len(dulieu) - 1)
Else
Exit For

End If
Next i
end if
 
Trạng thái
Không mở trả lời sau này.
Top