Lehet, hogy az Excel makrók nem olyan átfogóak, mint a többi automatizálási eszköz, de az Excel VBA érvényessége és hatékonysága nem ásható alá. Ha Excelben és más Microsoft Office-eszközökben, például a Wordben és az Accessben dolgozik, nem járhat rosszul a VBA-val és annak lehetőségeivel.

Az MS Excel egy hatékony eszköz, amely rengeteg lehetőséget kínál felhasználóinak. Az adatok tárolásától az automatizált irányítópultok létrehozásáig mindent megtehet az Excelben és annak táblázataiban.

Ha a VBA segítségével szeretné automatizálni rendezési feladatait az Excelben, próbálja ki ezeket a hatékony, könnyen alkalmazható makrókat.

Töltse le a Dummy Dataset-et

Kezdetnek letölthet egy ál-adatkészletet az Excel makró készségeinek fejlesztéséhez.

Biztos lehet benne, hogy ha már megismeri ezeket a makrókat, és jobban megérti a dolgok működését, átállíthatja a kódot, hogy illeszkedjen a saját munkahelyi vagy iskolai táblázataihoz.

Ha követni szeretné, letöltheti a cikkben használt adatkészletet.

Letöltés: Excel adatkészlet

instagram viewer

1. Egy oszlop rendezése Excel makrók használatával

Ezzel az egyszerű kóddal rendezheti az adatoszlopokat egy Excel-táblázaton belül. Ha letöltötte az áladatkészletet, megpróbálhatja rendezni az E oszlopot (Eladott egységek).

Nyisson meg egy új Excel-fájlt, és mentse el egy Excel makró-kompatibilis munkafüzet (.xlsm) munkafüzet típusa. Ez a fájl tárolja a makrót, hogy az adatokat egy másik fájlból rendezze.

Összefüggő: A legjobb online kurzusok a haladó Excel elsajátításához

A fájl(oka)t a makrófájlból fogja vezérelni, amelyek külön-külön lépnek kapcsolatba a munkafüzetekkel.

Írja be a következő kódot:

Alrendezés fejlécekkel()
Munkafüzetek("Pénzügyi minta.xlsx").Sheets (1).Aktiválás
Tartomány("A1:P701").sort Key1:=Tartomány("e1"), Sorrend1:=xlNövekvő, Fejléc:=xlIgen
Vége Sub

Ahol:

  • Key1: Határozza meg a rendezni kívánt oszlopo(ka)t
  • Rendelés1: Rendelési mód (növekvő/csökkenő)
  • Fejléc: Ha a tartalomnak vannak fejlécei, ez a lehetőség így marad xlIgen. Alternatív megoldásként válassza ki xlNo.

A tartomány a kezdő cellából és a záró cella címéből áll majd, így a rendszer mindent rögzít a rendezés céljából. Ennek eredményeként a teljes adatkészlet az E oszlop adatai alapján lesz rendezve.

2. Dinamikus adatok rendezése egyetlen oszlopban

Előfordulhatnak olyan esetek, amikor a kiindulási pont meghatározott, de a végpont dinamikus. Ilyen esetben a kódot dinamikussá teheti, hogy az automatikusan felveszi a tartomány végét.

Az adatok változásának elfogadásához használja az alábbi kódot:

Alrendezés fejlécekkel()
Munkafüzetek("Pénzügyi minta.xlsx").Sheets (1).Aktiválás
Tartomány("A1", Tartomány("A1").End (xlDown)).sort Key1:=Tartomány("e2"), Sorrend1:=xlNövekvő, Fejléc:=xlIgen
Vége Sub

Ahol:

  • Vége (xlDown): Ez a funkció automatikusan kiválasztja az utoljára kitöltött cellát

jegyzet: Ha a képlet üres cellát talál egy oszlopban, akkor az előző cellát tekinti a tartomány végének.

Összefüggő: Egyéni billentyűparancsok létrehozása a Microsoft Excel programban

3. Több oszlop rendezése együtt

Előfordulhatnak olyan helyzetek, amikor egyszerre több oszlopba szeretné rendezni az adatokat. Ehhez a következő kódot használhatja a cél elérése érdekében:

Sub SortMultipleColumns()
Munkalapokkal ("1. lap")
A .Cells (1, "A").CurrentRegion
.Cells.sort Key1:=.Range("B1"), Order1:=xlNövekvő, _
Kulcs2:=.Tartomány("E1"), Sorrend2:=xlNövekvő, _
Orientation:=xlTopToBottom, Header:=xlYes
Vége ezzel
Vége ezzel
Vége Sub

4. Oszlopok rendezése több lapon

Ha több munkalappal van dolgunk, érdemes lehet adatait egy irányítópultra helyezni. Az adatok előkészítésének egyik legfontosabb szempontja a válogatás, és az adatok meghatározott formátumba rendezése, hogy az érintettek vagy ügyfelei számára bemutathassák.

Az egyik lehetőség, hogy az egyes lapokon manuálisan lépked, rendezi a szükséges oszlopokat, majd folytassa a következő lépéssel. Alternatív megoldásként miért nem hagyja, hogy a VBA megcsinálja helyetted?

Az alábbi kód célja, hogy végigfusson a munkafüzet minden egyes elérhető lapján, és a megadott oszlopok alapján rendezze az elérhető adatokat.

Összefüggő: A Microsoft Excel keresési funkciói a táblázatokban való hatékonyabb kereséshez

A következőképpen rendezheti az oszlopokat több munkalapon:

Alrendezés WS()
Dim ws munkalapként
„Aktiválja a kívánt munkalapot
Workbooks("Pénzügyi minta.xlsx"). Aktiválja
„Automatikusan lapozzon az egyes munkalapokon a for ciklus használatával
Mindegyik ws-hez az ActiveWorkbookban. Ágynemű
'aktiválja az egyes munkalapokat
ws. Aktiválja
„Határozza meg a tartományt, majd rendezze az oszlopokat igényei szerint. Ebben az esetben csak egy oszlop van rendezés alatt.
Tartomány("A1", Tartomány("p1").End (xlDown)).sort Key1:=Tartomány("E1"), Sorrend1:=xlCsökkenő, Fejléc:=xlIgen
„A parancs a következő munkalapra való átlépésre szolgál, miután az előző munkalapot rendezte
Következő ws
Vége Sub

Az összes idézőjelekkel kezdődő információ VBA megjegyzés. Ezek nem kerülnek végrehajtásra a végrehajtási szakaszban. Azonban minden hozzáadott VBA megjegyzés jelentős mértékben kiegészíti a kódot, mivel a kódszakaszok lényegét, funkcionalitását és egyéb releváns részeit meghatározhatja.

5. Rendezett adatok másolása egyik lapról a másikra

Képzeljen el egy olyan helyzetet, amikor rendezni szeretné az adatokat, és a teljes adatkészletet (vagy annak egy részét) át szeretné másolni egy újonnan hozzáadott lapra. Ilyen esetekben az alábbi kódot használhatja az adott feladat végrehajtásához:

Alrendezés WS()
Dim ws munkalapként
„Aktiválja a kívánt munkalapot
Workbooks("Pénzügyi minta.xlsx"). Aktiválja
„Automatikusan lapozzon az egyes munkalapokon a for ciklus használatával
Mindegyik ws-hez az ActiveWorkbookban. Ágynemű
'aktiválja az egyes munkalapokat
ws. Aktiválja
„Határozza meg a tartományt, majd rendezze az oszlopokat igényei szerint.
„Ebben az esetben csak egy oszlop van rendezés alatt.
Tartomány("A1", Tartomány("p1").End (xlDown)).sort Key1:=Tartomány("E1"), Sorrend1:=xlCsökkenő, Fejléc:=xlIgen
„A parancs a következő munkalapra való átlépésre szolgál, miután az előző munkalapot rendezte
Következő ws
Hozzon létre egy új munkalapot a munkafüzetben az új adatok tárolásához
ActiveWorkbook. Ágynemű. Hozzáadás. Név = "Eredmények"
'Másolja be a rendezett adatokat az újonnan hozzáadott lapra
Sheets("Sheet1").Tartomány("A1:p701").Cél másolása:=Sheets("Results").Tartomány("a1")
Vége Sub

A fenti kód rendezi az értékeket az E oszlopban, új lapot ad hozzá Eredmények a meglévő munkafüzetbe, és illessze be a rendezett eredményeket a cellába A1.

Rendező makrók létrehozása Excelben

Az Excel VBA egy remek nyelv, amellyel sok időt és erőfeszítést takaríthat meg. A VBA makrók használatával kiterjedt irányítópultokat hozhat létre, egyszerűen, néhány kattintással rendezheti az adatokat, és könnyedén végrehajthat különféle funkciókat.

Szerencsére az Excel funkciói nem érnek véget a makrókban. Nézzen meg néhány tippet és trükköt, amelyek segítségével hatékonyabb Excel-felhasználóvá válhat.

A 9 legjobb webhely és blog, ahol Excel tippeket és trükköket tanulhat

Akár mester az Excelben, akár csak most kezdi, itt található a kilenc legjobb webhely és blog, amelyek segítségével tippeket és trükköket tanulhat meg.

Olvassa el a következőt

RészvényCsipogEmail
Kapcsolódó témák
  • Programozás
  • Microsoft Excel
  • Makrók
A szerzőről
Gaurav Siyal (8 cikk megjelent)

Gaurav Siyal két éves írási tapasztalattal rendelkezik, számos digitális marketingcégnek ír és szoftver-életciklus-dokumentumokat írt.

Továbbiak Gaurav Siyaltól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!

Kattintson ide az előfizetéshez