Hirdetés

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

  • Fferi50

    Topikgazda

    válasz #50414 üzenetére

    Szia!
    A sok Select és Activate utasítás bizony nem szerencsés. A másolást egy lépésben is meg lehet csinálni így:
    Range(forrás).Copy Destination:=Range(cél)
    Nem kell hozzá semmilyen ciklus!
    Esetedben a javaslat:
    Sub masolo()
    With Range("CO1:CR97")
         .Copy Destination:=Range("D1").Resize(.Rows.Count, Application.WorksheetFunction.Max(Range("CG:CG")) * .Columns.Count)
    End With
    End Sub
    A D1 cella helyett írd be annak a cellának a címét, ahova kezdődjön a másolat elhelyzése.
    Továbbá javaslom, hogy teljes CG oszlop helyett egy meghatározott tartományt vegyél fel a MAX függvényhez - olyan nagyságút, amit nagy biztonsággal nem lépnek át az adataid - ne kelljen mindig milliós cellaszámot figyelni.
    Még egy megjegyzés: A másolás paraméterei úgy vannak összeállítva, hogy más tartomány esetén is megfelelő sort és oszlopot másol át, a kívánt mennyiségben.
    Üdv.

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