Keresés

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

  • Fferi50

    Topikgazda

    válasz Mittu88 #24442 üzenetére

    Szia!

    A hibautan cimke szerintem felesleges.

    On Error GoTo hibavan
    For sorszam = 2 To osszsorszam
    Sheets(masodikadatbazis).Select
    raktarszam = Cells(sorszam, 2).Value
    munkalapnev = Application.WorksheetFunction.VLookup(raktarszam, Sheets("Raktárak").Range("$M$2:$N$90"), 2, False)
    raktarszam = munkalapnev
    ...
    Next

    hibavan:
    sorszam = sorszam + 1
    resume next

    Nem világos, hogy a munkalapnev változód milyen típusúnak van deklarálva. Ha variant akkor nem okoz futási idejű hibát, viszont az értéke hibaérték lesz és azt kell megvizsgálni
    if not iserror(munkalapnev) then raktarszam=munkalapnev

    Viszont megoldható másképp is, ha a munkalapnev nem variant tipusu:

    On Error Resume Next
    For sorszam = 2 To osszsorszam
    Sheets(masodikadatbazis).Select
    raktarszam = Cells(sorszam, 2).Value
    munkalapnev = Application.WorksheetFunction.VLookup(raktarszam, Sheets("Raktárak").Range("$M$2:$N$90"), 2, False)
    if err= 0 then raktarszam = munkalapnev else sorszam=sorszam+1
    ...
    Next

    Üdv.

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