Kustutage VBA abil kõik eelmiste kuupäevade andmetega lahtrid

Anonim

Selles artiklis loome makro, et kustutada eelmiste kuupäevade andmed. See makro kontrollib andmeid, säilitab tänased andmed ja kustutab kõik eelmiste kuupäevade andmed.

Selle näite toorandmed koosnevad kuupäevast, agendi nimest ja konkreetse agendi müügist sellel kuupäeval.

Makro käivitamiseks klõpsake lehel „Põhi” nuppu või seda saab isegi käivitada, vajutades kiirklahve Alt + F8.

Makro kustutab kõik varasemate kuupäevadega kirjed. Kuna käivitame selle makro 14. detsembril 2016, kajastab väljund ainult selle kuupäeva kirjeid.

Loogiline seletus

Selles näites oleme loonud makro “RemovePreviousData”. See makro kasutab tagurpidi FOR -tsüklit, see tähendab, et tsükkel töötab vastupidises suunas. Silmus algab viimasest reast ja liigub ülemise rea poole.

Pöördsilmuse kasutamise põhjus on see, et kui me oleksime kasutanud tavalist FOR -tsüklit, siis pärast iga rea ​​kustutamist oleksid andmetes olevad kirjed ülespoole nihkunud, mille tulemusel oleks iga rea ​​kustutamisel positsioneerimine muutunud. Selle vastu võitlemiseks oleme kasutanud tagasilööki.

Oleme kasutanud Step -lauset koos FOR -silmusega vastupidises suunas loopimiseks. FOR silmus algab viimasest reast ja liigub 11 pooleth rida.

Palun järgige koodi allpool

 Valik Selge alam EemaldaPreviousData () Dim Counter, LastRow as Integer 'Viimase rea rea ​​numbri leidmine LastRow = ActiveSheet.Range ("A1"). SpecialCells (xlLastCell). 11 samm -1, kui lahtrid (loendur, 1). Väärtus <Kuupäev siis 'Reareadade kustutamine (loendur). Kustuta lõpp, kui järgmine loendur Lõpp 

Kui teile see blogi meeldis, jagage seda oma sõpradega Facebookis. Lisaks saate meid jälgida Twitteris ja Facebookis.

Tahaksime sinust kuulda, andke meile teada, kuidas saaksime oma tööd paremaks muuta ja teie jaoks paremaks muuta. Kirjuta meile meilisaidile