Új hozzászólás Aktív témák

  • Mutt

    senior tag

    válasz mulli86 #44058 üzenetére

    Szia,

    1. lastsor típusa Long legyen, mert az integer csak 32 ezer sorral fog bírni.
    2. A hibaname és oszlopnumber a két for cikluson belül van inicilaziálva ami nem jó, hozd ki őket a for-ok elé.
    3. Variant a hibaname típusa, de közben a cella értékét ellenőrzöd. Jobb lenne egy specifikus típust használnod pl. Double ha számok érdekelnek, vagy String ha szöveg.
    4. Ha sokat dolgozol egy lapon akkor érdemes With ... End With-et használnod.
    pl.
    With Worksheets(1)
    lastsor = .Range("A5").End(xlDown).Row

    For x ...
    For y ...
    hibaname = .Cells(5, y)

    For p ...
    If hibaname = Sheets(3).Cells(1,p) then
    ....
    End If
    Next p
    Next y
    Next x

    End With

    5. A GoTo rész biztos hogy kell? Miért nem teszed az IF-be az ottani dolgokat?
    6. Sokat gyorsít a "villódzás" kikapcsolása.
    Application.ScreenUpdating = False a for ciklusok elé, majd = True a legvégén.

    üdv

Új hozzászólás Aktív témák