nhờ kiểm tra code (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Status
Không mở trả lời sau này.

nguyentu64

Thành viên mới
Tham gia
14/3/15
Bài viết
8
Được thích
1
Em mới học VBA nên tự viết được đoạn code lọc data theo điều kiện từ file excel khác. code cụ thể như ở dưới. code của em chạy ra được KQ chính xác nhưng lại báo lỗi. em ko hiểu nhờ anh chị trong diễn đàn tư vấn giúp em.
Sub rundata()
Dim master As Worksheet
Dim clien As Worksheet
Dim wb As Workbook
Dim rg As Range
Dim rg1 As Range
Dim rg2 As Range
Dim path As String
Dim i As Double
Dim f As Double
Dim j As Integer








Application.ScreenUpdating = False








Set master = ActiveWorkbook.Sheets("tomau")
Set rg = master.Range("hv10:hv210")
Set rg1 = master.Range("ib10:ib210")


path = ActiveWorkbook.path & "\" & "CircuitList"
Set wb = Workbooks.Open(path)
Set slien = wb.Sheets("CirView(After)")
Set rg2 = slien.Range("i5:i1000,o5:o1000")

For i = 1 To 200
f = -1
j = 1

For Each cell In rg2
If rg.Cells(i) = cell Then
rg.Cells(i).Offset(0, f).Value = cell.Offset(0, -2)

f = f - 1
elseIf rg1.Cells(i) = cell Then
rg1.Cells(i).Offset(0, j).Value = cell.Offset(0, -2)
j = j + 1
End If
Next cell
Next

wb.close
Application.ScreenUpdating = True

End Sub

các lỗi em gặp phải như sau
lỗi đầu application defined or object definded error
và loi chỉ hien so 400
 
Đây là lời khuyên, nếu bạn thật sự mới tập viết Code:

Vậy bạn đã thử viết được macro nào để lọc từ 1 cơ sở dữ liệu nhiều tháng ra 1 vài tháng cụ thể nào đó sang trang tính 'TongHop' chưa?
Nếu chưa thì bạn hãy thử trước đi đã.
 
Upvote 0
thanks, mình tập viết cho vài ứng thứ mình cần thôi. mình ko có nhiều thời gian để tìm hiểu sâu hơn về vba được. nhưng lỗi mình cũng tìm ra lỗi rồi
 
Upvote 0
thanks, mình tập viết cho vài ứng thứ mình cần thôi. mình ko có nhiều thời gian để tìm hiểu sâu hơn về vba được. nhưng lỗi mình cũng tìm ra lỗi rồi

Bạn tập tính cẩn thận thì sẽ học được.
Bài học trên cho thấy bạn có tính cẩu thả, chỉ một chút xíu trên đã có ít nhất là 3 vấn đề:
1. viết code đặt tên biến một đằng, dùng một nẻo.
2. lúc thấy loiox, chưa kịp xem cho kỹ đã hấp tấp mang đi hỏi
3. lúc hỏi bài cũng không cẩn thận gõ tiêu đề cho đúng chính tả.
 
Upvote 0
thank bạn nói rất đúng. tính mình cẩu thả thật. đang cố sửa. còn không phải mình hấp tấp chưa xem kỹ đã đi hỏi. mình ngồi hơn hai ngày mà không biết lỗi ở đâu, vì code chạy vẫn ra kết quả nhưng lại báo lỗi
 
Upvote 0
Status
Không mở trả lời sau này.

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

Back
Top Bottom