Hirdetés

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

  • Fferi50

    Topikgazda

    válasz gycs02 #52880 üzenetére

    Szia!
    Azt hiszem ott van a "baj", hogy az utolso sort olyan oszlopban keresed, amiben a szűrés után éppen nincs adat, hiszen ide szeretnéd beírni az x-eket.
    "utolso = Range("cj" & Rows.Count).End(xlUp).Row
    Set srng = Range("cj" & elso & ":cj" & utolso)"
    Így aztán az utolsó sor értéke kisebb lesz mint a 13 induló érték (akár 1 is lehet!), ezért látod azt, hogy felfelé tölti ki az értékeket.
    Amint korábban írtam, az utolsó sor értékét abban az oszlopban kell megkeresni, amelyben az utolsó érvényes adat van.
    Tehát az AW oszlop alapján keressük meg az utolsó sort és a CJ oszlopot jelöljük ki kitöltendőnek:
    elso=13 'ha a fejléc a 12 sorban van, akkor ez a lehetséges első szűrt sor
    utolso = Range("AW" & Rows.Count).End(xlUp).Row
    Set srng = Range("CJ" & elso & ": CJ " & utolso)
    For Each cl In srng.Columns(1).SpecialCells(xlCellTypeVisible).Cells
    cl.Value = "x"
    Next
    Próbáld ki ezt légy szíves.
    Üdv.
    Ps. A makróknál használd légy szíves </> gombot (MS előtt van).

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