Diễn đàn giaiphapexcel.com sẽ chuyển sang hoạt động ở link sau

http://www.giaiphapexcel.com/diendan/forums


[CLICK] học VBA ở Đà Nẵng tháng 5/2017


Hiển thị kết quả tìm kiếm từ 1 đến 2 trên tổng số: 2

Ðề tài: giúp sửa lỗi For Without Next

  1. Question giúp sửa lỗi For Without Next

    Chào các bạn!
    nhờ các bạn giúp mình đoạn code này nhé:
    Mình muốn viết 1 đoạn chương trình để chuyển dữ liệu từ sheet nguồn sang sheet đích, với điều kiện là chỉ lấy dữ liệu ở sheet nguồn khi đã gặp đúng ngày hiện tại(today).
    Tuy nhiên trong quá trình chạy thử đến đoạn chuyển dữ liệu sang sheet mới (trong file là chuển từ sheet "Thang 6" sang sheet "tinh toan") thì báo lỗi compiler: For without Next
    Đoạn mã cụ thể như sau(đến phần mình bôi đỏ là nó báo lỗi):
    --------------------------------
    Sub test()
    Dim inputday, today As Date
    Dim i, j, a, jtemp, itemp, hangdulieu, cotdulieu, hangdich As Integer

    '=========================Kiem tra ngay co trung khong?
    'thedate = Now
    'thedate = format(Day(Now), "00") & format(Month(Now), "00") & Year(Now)
    'Range("I1").Select
    Sheets("Thang 6").Select
    Range("A1").Select
    Range("I1").NumberFormat = "dd/mm/yyyy"
    today = Left(Now, 10)
    ActiveCell.FormulaR1C1 = today
    '====so sanh 2 ngay
    'Range("AB4").NumberFormat = "dd/mm/yyyy"
    inputday = Range("AB4").Value
    If inputday = today Then
    Range("k1").FormulaR1C1 = " trung "
    Else
    Range("k1").FormulaR1C1 = " k0trung "
    End If

    'Dim inputday, today As Date
    '===========================duyet ngay va lay gia tri
    Sheets("Thang 6").Select
    Range("A1").Select
    'a = 0
    today = Left(Now, 10)
    hangdich = 5
    hangdulieu = 5
    For j = 6 To 36 ' chay tung cot
    i = 4
    'itemp = i + 1
    'jtemp = j
    ' hangdulieu = i + 1
    ' cotdulieu = j
    inputday = Cells(i, j).Value ' kiem tra ngay thang trung hay khong?
    While inputday = today
    Exit For
    Wend
    '============================Chep du lieu sang sheet "tinhtoan"
    For hangdulieu = 5 To 10
    For hangdich = 5 To 10
    Sheets("tinh toan").Cells(hangdich, 4) = ActiveSheet.Cells(hangdulieu, j)
    Next hangdich
    Next hangdulieu


    Range("A1").Select
    End Sub
    Tập tin đính kèm Tập tin đính kèm

  2. Tức là thiếu 1 Next chứ sao nữa?

    Bạn đếm For, và đếm next, sẽ thấy.
    Note:
    Đôi khi trong code có For đồng thời có If nhưng thiếu End If cũng báo lỗi như vậy.

Thông tin về chủ đề này

Users Browsing this Thread

Hiện có 1 người đang xem đề tài này. (0 thành viên và 1 khách)

Bookmarks

Bookmarks

Quyền Sử Dụng Ở Diễn Ðàn

  • Bạn không thể đăng đề tài mới
  • Bạn không thể đăng trả lời
  • Bạn không thể đăng file đính kèm.
  • Bạn không thể sửa bài viết.
  •