Számítógépek, Szoftver
VBA Excel: mintaprogramok. Makrók Excel
Kevesen tudják, hogy az első változata a népszerű Microsoft Excel termék jelent meg 1985-ben. Azóta átment jó néhány módosítást a kereslet és a felhasználók millióinak szerte a világon. Azonban sok munka csak egy kicsit képességeit a táblázatba, és nem is tudom, hogyan tudnák, hogy megkönnyítsük az a képesség, hogy az Excel programozás.
Mi VBA
Programozás Excel történik Visual Basic for Application programozási nyelv, amely-ben épült, a leghíresebb táblázatkezelő a Microsoft.
Az ő érdeme, szakértők szerint a viszonylag könnyű a fejlődés. Mivel a gyakorlat azt mutatja, VBA lehet elsajátítani az alapokat, sőt a felhasználók, akik nem rendelkeznek szakmai programozási ismeretek. VBA funkciók közé script végrehajtása az irodai alkalmazási környezetben.
A hátránya a program a problémákat, amelyek a kompatibilitást a különböző változatok. Ezek miatt az a tény, hogy a VBA-kódot a program utal a funkcionalitást, amely jelen van az új változata a termék, de nem a régi. Van is egy nagy hátránya és túlzottan magas nyitottsága kódot változtatni az arcát egy idegen. Ugyanakkor, a Microsoft Office és az IBM Lotus Symphony lehetővé teszi a felhasználók alkalmazni titkosítási belépési kódot és jelszót beállításokat, hogy megtekinthesse.
Tárgyak, gyűjtemények, tulajdonságok, és módszerek
Ez az ezeket a fogalmakat meg kell értened, azoknak, akik mennek dolgozni a VBA környezetben. Először is, meg kell értenie, mi is az objektum. Az Excel, az e törvényben, mint a fal, egy könyv, és a sejtek tartományban. Ezek a tárgyak különleges hierarchiát, azaz engedelmeskedik egymást.
Amelyek közül a legfontosabb az alkalmazás, a megfelelő Excel program maga. Követte munkafüzetek, munkalapok, és a tartományban. Például, hogy lásd az A1 cella egy külön lemezt kell az utat, figyelembe véve a hierarchiában.
Ami a „gyűjtemény”, ez a csoport az objektumok azonos osztályban, ahol a felvétel adott ChartObjects. Elemei is tárgyakat.
Következő dolog - tulajdonságait. Ezek elengedhetetlen funkció minden tárgyat. Például a Range - egy érték vagy képlet.
Módszerek - az a parancs azt mutatják, hogy szeretne. Írásakor kódot VBA azokat kell választani a tárgy pont. Például, mint később látni fogjuk, nagyon gyakran, amikor a programozás a „Excel” használatra sejteket parancs (1,1) lehetőségre.Válassza. Ez azt jelenti, hogy szükséges, hogy kiválasszon egy cellát koordinátáit (1,1), azaz A1.
Azonban gyakran használják Selection.ClearContents. Ennek megvalósítását az elszámolási a tartalmát a kijelölt cella.
Hogyan kezdjük el
Először is, szeretnénk létrehozni a fájlt, és mentse el, adjuk meg a nevet, és válassza ki a típus «Book Excel makró-képes.”
Aztán megy a VB alkalmazás, ami elég ahhoz, hogy használni kombinációja «Alt» gomb és «F11». Következő:
- A menüsorban az ablak tetején kattintson a ikonra a Excel ikon;
- Mudule kiválasztott parancs;
- tartsa a ikonra kattintva a floppy lemez;
- levelet, mondjuk, egy kódot vázlatot.
Úgy néz ki, az alábbiak szerint:
Sub programot ()
„A kód
End Sub
Felhívjuk figyelmét, hogy a vonal „„A kód”lesz kiemelve a különböző színű (zöld). Ennek az az oka aposztróf szállított elején a húr, ami azt jelzi, hogy az alábbiak megjegyzést.
Most írhat bármilyen kódot, és hozzon létre a maguk számára egy új eszköz a VBA Excel (lásd a mintaprogramok, stb.). Természetesen azok, akik ismerik az alapokat a Visual Basic, akkor sokkal könnyebb lesz. Azonban azok is, akik nem rendelkeznek, ha azt akarjuk, hogy tudja, hogy kényelmes elég gyorsan.
Makrók Excel
E mögött a név rejt írt programok Visual Basic for Application nyelven. Így a programozás az Excel -, hogy hozzon létre egy makrót a kívánt kódot. Ezzel a képességgel, Microsoft táblázatkezelő saját alakul ki, alkalmazkodva a követelmények egy adott felhasználó. Miután foglalkozott, hogyan lehet létrehozni modulok írásban makrók, lehetséges, hogy folytassa konkrét példákat VBA Excel programban. Ez a legjobb kezdeni a legalapvetőbb kódokat.
1. példa
Feladat: Írj egy programot, amely értékének másolása a tartalmát egy cellát, majd írj egy másik.
Ehhez:
- nyissa meg a fül „View”;
- mozgatni az ikon „makrók”;
- rázza meg a „Record Macro”;
- töltse nyitott formában.
Az egyszerűség kedvéért a „Macro neve” szabadság „Makros1” és a „Shortcut key” egészül ki, például hh (ez azt jelenti, hogy lehet futtatni a programot például lesz «Ctrl + h» Blitz csapat). Nyomja meg az Entert.
Most, hogy már megkezdődött a makró rögzítését, hogy ki a tartalmát egy cellából a másikba. Térjen vissza az eredeti ikont. Kattintson a „Record Macro”. Ez a művelet jelzi befejezése kisalkalmazások.
Következő:
- ismét mozog a húr „makrók”;
- van kiválasztva a listában „Macro 1”;
- kattintson a „Run” (ugyanazt a műveletet kezd indított gyorsbillentyűk «Ctrl + hh»).
Ennek eredményeként az intézkedéseket, amelyek végeztek a felvétel során a makrót.
Logikus, hogy milyen a kód így néz ki. Ehhez menj vissza a string „makrók” és kattintson a „Szerkesztés” vagy „Enter”. Ennek eredményeként, találják magukat a VBA környezetben. Tulajdonképpen maga a kód között található vonalak makró Makros1 Sub () és az End Sub.
Ha a másolás megtörtént, például sejtből A1 cellában C1, az egyik sornyi kódot fog kinézni tartomány ( „C1”). Jelölje. A fordítás, úgy néz ki, "Range (" C1 "). Select", más szóval, ami egy átmenet VBA Excel cellában C1.
Az aktív rész a kód teljessé ActiveSheet.Paste csapat. Ez azt jelenti, a felvétel tartalmát kijelölt cella (ebben az esetben, az A1) a kijelölt cellában C1.
2. példa
VBA ciklusok segít létrehozni a különböző makrók Excel.
VBA ciklusok segít létrehozni a különböző makrókat. Tegyük fel, hogy van egy funkciója y = x + x 3 + 3x 2 - cos (x). Azt szeretnénk, hogy hozzon létre egy makrót a grafika. Ezt meg lehet tenni csak a VBA ciklus.
A kezdeti és végső értéke argumentum funkciók vegye x1 = 0 és x 2 = 10. Továbbá be kell vezetni egy állandó - az ár-érték lépés megváltoztatja az érvet, és egy kezdeti értéket a számláló.
Minden példákat VBA Excel makrók segítségével létrehozott ugyanazt az eljárást a fentiek szerint. Ebben a konkrét esetben a kód így néz ki:
Sub programm ()
x1 = 1
x2 = 10
shag = 0,1
i = 1
Ne Míg x1
y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)
A sejteket (i, 1) .Value = x1 (x1 írt érték a memóriát a koordinátákat (i, 1))
A sejteket (i, 2) .Value = y (y érték beíródik a cellát a (i, 2))
i = i + 1 (valódi szám);
x1 = x1 + shag (argumentum változik a lépés méretét);
hurok
End Sub.
Ennek eredményeként ez a futam makro „Excel” szerezni két oszlopot, amelyek közül az első rögzíti az x értéke, és a második - y.
Majd a menetrend tudja építeni őket, a szabvány „Excel”.
3. példa
Megvalósítása ciklusok VBA Excel 2010, valamint a további változatok, valamint a már csökkentett Do While tervezés felhasználhatja.
Képzeljünk el egy programot, amely létrehoz egy oszlopot. Minden cella lesz rögzítve négyzetek megfelelő sorszám. A használata a tervezés lehetővé teszi, hogy rögzítse, hogy nagyon röviden, használata nélkül egy számláló.
Először is meg kell, hogy hozzon létre egy makrót, a fent leírtak szerint. Ezután írjuk be a kódot is. Hisszük, hogy mi érdekli az értékeket a 10 sejtekben. A kód a következő.
I = 1-től 10 Következő
A parancs átadásra kerül az „emberi” nyelv, mint „ismételt 1-10 lépésekben egyet.”
Ha a feladat, hogy megkapja az oszlopot terek, például minden páratlan egész 1 és 11 között, írunk:
I = 1-től 10 1. lépés Következő.
Itt lépésről - lépésre. Ebben az esetben, ez egyenlő a kettő. Alapértelmezésben nincs szó a hurok azt jelenti, hogy egyetlen lépésben.
Az eredményeket kell tárolni a sejtszám (i, 1). Ezután minden alkalommal, amikor a ciklus elindításához növekedése az értéke lépek automatikusan növekszik, és a sor száma. Így nem lesz kód optimalizálása.
Általánosságban, a kód nézne:
Sub programot ()
I = 1-től 10 1. lépés (lehet írni csak az i = 1-től 10)
A sejteket (i, 1) .Value = i ^ 2 (azaz a négyzet-értéke van írva a sejtbe (i, 1) i)
Következő (bizonyos értelemben szerepet tölt a számláló eszköz és egy másik ciklus kezdete)
End Sub.
Ha helyesen tette, beleértve a felvétel és a futás makrók (lásd. A fenti utasításokat), akkor az úgynevezett egyes alkalommal, amikor egy adott méretű akkor érhető oszlopon (amit ebben az esetben 10 sejt).
4. példa
A mindennapi életben gyakran van szükség, hogy ezt vagy azt a döntést függően bizonyos körülmények között. Nem nélkülözheti őket VBA Excel. Ezek a műsorok, ahol a további folyamán az algoritmus kiválasztott helyett kezdetben meghatározott, leggyakrabban használt design If ... Then (a nehéz esetekben) If ... Then ... END Ha.
Tekintsük a konkrét esetben. Tegyük fel, hogy szeretnénk létrehozni egy makrót „Excel”, hogy a sejtnek a koordinátái (1,1) került rögzítésre:
1, ha az argumentum pozitív;
0, ha az argumentum zérus;
1, ha az argumentum negatív.
A kialakuló ilyen makró „Excel” kezdődik a szokásos módon, a használata „forró” gombok Alt és F11. További írásbeli az alábbi kódot:
Sub programot ()
X = A sejteket (1, 1) .Value (Ez a parancs hozzárendeli az x értéke koordinátáit a cella tartalma (1, 1))
Ha x> 0 és azután a sejteket (1, 1) .Value = 1
Ha X = 0, akkor A sejteket (1, 1) .Value = 0
Ha x <0 és azután a sejteket (1, 1) .Value = -1
End Sub.
Továbbra is futtatni egy makrót, és kap „Excel” kívánt értéket az érvelés.
VBA függvények
Mint azt bizonyára észrevetted, a leghíresebb programot Microsoft táblázatkezelő alkalmazás nem túl nehéz. Különösen akkor, ha megtanulják, hogyan kell használni a VBA funkciókat. Összességében ez a programozási nyelv létre kifejezetten pályázatírás „Excel”, és a Word, mintegy 160 funkciókat. Ők lehet osztani több nagy csoportra. Ezek a következők:
- Matematikai függvények. Azok alkalmazására az érv a koszinusz értéket kapunk, a természetes logaritmus, és így az egész részt.
- Pénzügyi függvények. Lévén, hogy a rendelkezésre álló és használata programozás az Excel, akkor kap hatékony eszközök számviteli és pénzügyi elszámolások.
- Array függvények. Ezek közé tartozik a Array, IsArray; LBound; UBound.
- VBA Excel működni a vonalon. Ez egy meglehetősen nagy csoportot. Ez magában foglalja, például a Space funkciót, hogy hozzon létre egy string számos rések egyenlő egész szám argumentum vagy ASC transzferek szimbólumok ANSI kódot. Mindegyikük széles körben használt és lehetővé teszik, hogy a húrok a „Excel” alkalmazások létrehozásához sokkal könnyebb dolgozni ezeket a táblázatokat.
- Adat típus konverziós funkciókat. Például CVaR visszatér Expression érv, átalakítják Variant adattípus.
- Dátum funkciókat. Ezek jelentősen bővíteni a szabványos funkciók „Excel”. Tehát WeekdayName függvény neve (teljes vagy részleges) a nap a héten a száma. Még több hasznos az időzítő. Ő adja a másodpercek száma, akik éjfél óta eltelt egy bizonyos pillanatban a nap.
- Funkció alakít egy numerikus érv a különböző számrendszerek. Például október kiküldi az oktális reprezentációja a számot.
- formázási funkciókat. A legfontosabb ezek közül a Format. Ez visszaad egy Variant expressziós szerint formázzuk megadott utasítások leírása a méret.
- és így tovább.
A tanulmány tulajdonságainak a feladatokat és azok alkalmazása jelentősen kibővíteni a „Excel”.
5. példa
Próbáljuk megoldani bonyolultabb problémákat. Például:
Dan papír alapú dokumentum tényleges költségek szintje a vállalati jelentés. Szükséges:
- fejlessze minta részét táblázatkezelő „Excel”;
- hogy egy VBA program kérni fogja a nyers adatok kitölteni, hogy végezze el a szükséges számításokat, és töltse ki a sablont a megfelelő cella.
Tekintsük az alábbi megoldásokat.
Sablon létrehozása
Minden művelet a szokásos lapot Excel. Szabad sejtek számára fenntartott bevinni az adatokat a hónap, év, cím fogyasztói cégek, az összeg a költségek szintje a forgalom. Mivel a vállalatok száma (társaságok), amelyek tekintetében a jelentés nem kerül rögzítésre a sejteket, hogy az értékek alapján és a szakmai neve nem Előfoglalt. Munkalap rendelt egy új nevet. Például a „Օ jelentés”.
változók
Írni a program automatikusan kitölti a sablon, válassza ki a jelölést. Ők fogják használni változók:
- NN- száma az aktuális sor a táblázat;
- TP és TF - tervezett és tényleges forgalom;
- SF és SP - tényleges és tervezett összköltség;
- IP és IF - tervezett és tényleges költségek szinten.
Jelölje ugyanazok a betűk, hanem egy „előtag» Itog felhalmozási összesen oszlopban. Például ItogTP - Ami című oszlopban, a „tervezett forgalom.”
A probléma megoldása a VBA programozási
Ezzel a jelöléssel, megkapjuk a képlet a variancia. Ha azt szeretnénk, hogy végezze el a számítást% van (F - P) / P * 100, és az összeg - (F - P).
Az eredmények ezen számítások lehet a legjobban, csak hogy „Excel” táblázatkezelő a megfelelő cellákba.
Az eredmény és a prognózis ténylegesen kapott képletekkel ItogP = ItogP + P és ItogF = ItogF + F.
Az eltérések az = (ItogF - ItogP) / ItogP * 100, ha a számítást hajtjuk végre, mint a százalékos, és ha a teljes érték - (ItogF - ItogP).
Az eredmények ismét rögzítik a megfelelő sejtek, így nincs szükség, hogy azokat változó.
Megkezdése előtt egy olyan programot létrehozni szeretné menteni a munkafüzetet, például „néven Otchet1.xls”.
Nyomja meg a „Create a jelentési táblázatot,” meg kell nyomni csak 1 alkalommal megadása után a fejléc információ. Tudnia kell, és egyéb szabályokat. Különösen a gomb „hozzáadása vonal” meg kell nyomni minden alkalommal, miután belép a táblázatot az értékek minden egyes tevékenység. Miután az összes szükséges adatokat nyomja meg a „Befejezés”, majd kapcsoljuk be a „Excel” az ablakban.
Most, hogy tudjuk, hogyan kell megoldani a problémát az Excel makrókkal. Az a képesség, hogy használja a VBA Excel (lásd mintaprogramok. Fent), és akkor lehet, hogy a munkát a környezet a legnépszerűbb abban a pillanatban, a szövegszerkesztő „Szó”. Különösen fontos, hogy a felvételt, ahogy az elején ezt a cikket, vagy írásban kódot, hogy megteremtse a menü gombok, amelyen keresztül számos, a műveleteket a szövegben, ha megnyomja a gombokat szolgálatban vagy a „View” ikon és a „makrók” fülre.
Similar articles
Trending Now