Makrók alkalmazása VBA felületen

Slides:



Advertisements
Hasonló előadás
Microsoft Excel Függvények I.
Advertisements

Visual Basic for Application (VBA)
Gyakorló feladatsor eljárásokra Készítette: Rummel Szabolcs Elérhetősé:
Számítástechnika I. 2.konzultáció
Felhasználó barátság eszközei
Érettségi vizsga Visual Basic Express 2008-cal
Számítástechnika Levelezőknek
BMEEOVKMKM4 Házi feladat megoldás áttekintés
Benczúr Zsolt VBA gyorstalpaló Benczúr Zsolt
Számítástechnika Dr. Nyulászi László Tanszékvezető:
Táblázat kezelő programok
Visual Basic for Application (VBA)
Táblázatkezelés Microsoft Excel
Borland C/C++ mintapéldák függvényekre. 1. példa Írjunk olyan függvényt amely egy számot kiirat.
Táblázatkezelés a MS Excel segítségével
Készítette: Pető László
Érettségi feladatok megoldása LINQ-kel
Kliensoldali Programozás
Microsoft Excel Diagramok.
Microsoft Excel Függvények VIII.
Mivel a bankszámla kamata általában igen alacsony, érdemes körülnézned a különböző megtakarítási/befektetési lehetőségek között. MIELŐTT VÁLASZTASZ A.
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
Alapszint 2.  Készíts makrót, ami a kijelölt cellákat egybenyitja, a tartalmat vízszintesen és függőlegesen középre igazítja és 12 pontos betűméretűre.
Forrás: informatika.gtportal.eu/letoltes/excel/szum_max_min.ppt
Excel Függvények Páll Boglárka.
Excel 2007.
Tömbök és programozási tételek
excel, (visual basic) makrók gyorstalpaló
SQL – OLAP 5. óra. Personal Express programozása Saját rutinok, függvények készíthetők DEFINE nev PROGRAM vtípus EDIT nev nev ” megjegyzés VARIABLE változó.
1 AAO folytatás ++ Csink László. 2 Rekurzív bináris keresés (rendezett tömbben) public static int binker(int[] tomb, int value, int low, int high) public.
Turbo Pascal Indítás: C:\LANGS\Turbo Pascal Turbo Pascal.
HTML 2. Űrlapok
Programozás I. Típus algoritmusok
1 BME VEGYÉSZMÉRNÖKI ÉS BIOMÉRNÖKI KAR MESTERSZINTŰ MŰSZERES ANALITIKA KÉMIA SZAKIRÁNYÚ TOVÁBBKÉPZÉSI SZAK INFORMATIKA (SZÁMÍTÁSTECHNIKA) nov.19.
1 Mivel foglalkozunk a laborokon? 7. hét: Do-Loop-Until Do-Until-Looptömbök Function 7. hét: Do-Loop-Until és Do-Until-Loop ciklusok. Egy indexes tömbök,
Turócziné Kiscsatári Nóra
A Visual Basic nyelvi elemei
Pénzügyi feladatok VBA támogatása Barna Róbert KE GTK
Táblázatkezelés KÉPLETEK.
Gazdasági és logisztikai feladatok
Pole (array of...).  Zložený datový typ na ukladanie viacerých premených  Zápis: var meno_pola : array [ konce intervala ] of základný typ ; Základné.
Barna Róbert KE GTK Informatika Tanszék Pénzügyi feladatok VBA támogatása 2. előadás.
1 Mivel foglalkozunk a laborokon? 7. hét: Do-Loop-Until Do-Until-Looptömbök Function 7. hét: Do-Loop-Until és Do-Until-Loop ciklusok. Egy indexes tömbök,
1 Szervetlen és Analitikai Kémia Tanszék, Kémiai Informatika Csoport Számítástechnika Kari rendszergazda: Rippel Endre (Ch C2)
Bevezetés az Office programozásába
Rendezőalgoritmusok. Feladatok I. 1.Hozzunk létre új StandardEXE VB projektet. Töröljük Form1-t 2.Add/Module/New, majd Properties/átnevezzük: „MainModule”
A 2. géptermi beszámoló VBA anyagának összefoglalása
1 Mivel foglalkoz(t)unk a laborokon? 1.Labor: Word alapok Excel alapok: Excel alapok: Cellahivatkozás, munkalapfüggvény, diagram varázsló, trendvonal 2.
Excel programozás (makró)
Weboldalba ágyazott interaktív feladatok GeoGebra módra Papp-Varga Zsuzsanna ELTE IK Média- és Oktatásinformatika Tanszék
1 Függvények használata – az első függvénynél a formulát háromszor be kell írni, rendre az x, x+h, x-h argumentumokkal, – a második függvénynél az új (feltételes.
Az 5,6,7 laborok VBA anyagának összefoglalása
Az Excel Makro-programozása
1 BME VBK KROMATOGRÁFIÁS SZAKANALITIKUS KÉPZÉS INFORMATIKA (SZÁMÍTÁSTECHNIKA) dec. 2. Access „elmaradás” - a Beszall_forg lekédezés elkészítése:
1 Mivel foglalkoz(t)unk a laborokon? 1.Labor: Word alapok Excel alapok: Excel alapok: Cellahivatkozás, munkalapfüggvény, diagram varázsló, trendvonal 2.
1 ANALITIKAI KÉMIAI SZAKMÉRNÖKI TANFOLYAM INFORMATIKA (SZÁMÍTÁSTECHNIKA) 2007/2008. őszi félév Tanárok: Kollárné Dr. Hunek Klára,
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
BME VEGYÉSZMÉRNÖKI ÉS BIOMÉRNÖKI KAR
Kimutatás-pivot tábla, Excel 2010
BME VEGYÉSZMÉRNÖKI ÉS BIOMÉRNÖKI KAR
Előadó: Édes Péter Az Excel programozása Előadó: Édes Péter
Informatikai gyakorlatok 11. évfolyam
Kimutatás készítés 1..
Excel programozás (makró)
12. hét, nov. 24: 2. géptermi beszámoló
B M Java Programozás 9. Gy: Java alapok IT A N Adatkezelő 5.rész
Informatikai gyakorlatok 11. évfolyam
B M Java Programozás 5. Gy: Java alapok IT A N Adatkezelő 1.rész
Függvénysablonok használata
Előadás másolata:

Makrók alkalmazása VBA felületen Gazdasági feladatok Excel 2007-ben Somogyi Edit

Adó számítása

Program elkészítésének lépései Adósávok és eredménycellák megadása Párbeszédpanel elkészítése Vezérlőelemek felvétele Tulajdonságok megadása Programkód megírása

Adósávok és eredménycellák

Párbeszédpanel elkészítése

Programkód megírása Munkafüzet megnyitásakor a párbeszédpanel megjelenjen Private Sub Workbook_Open() Panel.Show End Sub

Az Adó gomb megnyomásakor számolja ki a jövedelmet, az adókulcsot és az adót. Private Sub Adozas_Click() jov = Val(Bevetel.Text) - Val(Koltseg.Text) tartomany = Worksheets("Munka1").Range("a2:c3") kulcs = WorksheetFunction.VLookup(jov, tartomany, 3) / 100 If jov > 1700000 Then Ado = 306000 + (jov - 1700000) * kulcs Else Ado = jov * kulcs Cells(5, 2) = FormatCurrency(jov, 0) Cells(6, 2) = FormatPercent(kulcs, 0) Cells(7, 2) = FormatCurrency(Ado, 0) End Sub

BÉT árfolyamok elemzése

Párbeszédpanel felépítése

Programkód megírása A munkafüzet megnyitásakor hozzon létre egy új munkalapot, és indítsa el az Arfolyam nevű makrót. Private Sub Workbook_Open() Sheets.Add Arfolyam End Sub

Az Arfolyam makró elemei Fejléc Sub Arfolyam() 'Oszlopnevek Cells(1, 1) = "Állampapír neve" Cells(1, 2) = „Állampapír fajtája” Cells(1, 3) = "Tranzakció ideje" Cells(1, 4) = "Vétel" Cells(1, 5) = "Eladás" Cells(1, 6) = "Záró" Cells(1, 7) = "Mennyiség" Cells(1, 8) = "Változás" Cells(1, 8) = "Összérték" ’Tartomány kijelölése ActiveSheet.Range("a1:i20").Select 'Karakterformázás With Selection.Font .Name = "Times New Roman" .FontStyle = "Bold Italic" .Size = 14 End With 'Keretezés Selection.Borders(xlLeft).LineStyle = xlContinuous Selection.Borders(xlRight).LineStyle = xlContinuous Selection.Borders(xlTop).LineStyle = xlContinuous Selection.Borders(xlBottom).LineStyle = xlContinuous Selection.BorderAround xlDouble 'Oszlopszélesség igazodása Selection.EntireColumn.AutoFit ’Párbeszédpanel megjelenítése ArPanel.Show End Sub

Állampapír kiválasztása

Részvény kiválasztása A részvény kiválasztásával megjelenik a megfelelő lista, amely az eredeti táblázatban van Private Sub Reszveny_Click() Lista.RowSource = "k2:k8" End Sub

Változás

Programkód A Valtoz függvény kiszámolja az eladás és záróérték különbségét Private Function Valtoz() As Double Valtoz = _ Val(Eladas.Text) - Val(Zaro.Text) End Function A Változás nyomógombra kattintva kiírja a az eredményt Private Sub Valtozas_Click() MsgBox "Az állampapír értékének változása " & _ FormatCurrency(Valtoz,0) , vbOKOnly, "Változás" End Sub

Összérték

Programkód Az Osszes függvény kiszámolja az eladás és a mennyiség szorzatát Private Function Osszes() As Double Osszes = Val(Mennyiseg.Text) * Val(Eladas.Text) End Function Az Összérték gombra kattintva kiírja az eredményt Private Sub Osszertek_Click() MsgBox "Az állampapír eladási összértéke " _ & FormatCurrency(Osszes), vbOKOnly, "Összérték" End Sub

Adatok kiírása a táblázatba

Programkód elemei Private Sub Felvitel_Click() Const ksor=2 ’Hányadik sorban állunk If sor < 2 Then sor = ksor Else sor = sor + 1 ’Melyik állampapírt választottuk If Reszveny.Value = True Then nev = "Részvény" If Kotveny.Value = True Then nev = "Kötvény" If Befektetes.Value = True Then nev = "Befektetési jegy" ’Adatok kiírása táblázatba Cells(sor, "a") = nev Cells(sor, "b") = Lista.Text Cells(sor, "c") = Ido.Text Cells(sor, "d") = Val(Vetel.Text) Cells(sor, "e") = Val(Eladas.Text) Cells(sor, "f") = Val(Zaro.Text) Cells(sor, "g") = Val(Mennyiseg.Text) Cells(sor, "h") = Valtoz Cells(sor, "i") = Osszes 'Oszlopszélesség igazodása Selection.EntireColumn.AutoFit 'Állapot visszaállítása Vetel.Text = "" Eladas.Text = "" Zaro.Text = "" Mennyiseg.Text = "" Lista.Text = "Válassz egy értékpapírt!"

Statisztika panel Ha legalább két sor van a táblázatban jelenítse meg a Statisztika panelt Private Sub Statisztika_Click() If Cells(2,1)<>”” Then StatisztikaPanel.Show Else MsgBox _ "Töltse fel a táblázatot!", vbOKOnly, "Keresés" End Sub

Diagram

Programkód Private Sub Diagram_Click() ’Hány sorban vannak adatok Do While Cells(i, 1) <> "" i = i + 1 Loop sor = i –1 ’Diagram létrehozása ActiveSheet.Shapes.AddChart.Select With ActiveChart .SetSourceData Source:=Range(Cells(2, 4), Cells(sor, 6)) .ChartType = xlLineMarkersStacked ‘Jelmagyarázat .SeriesCollection(1).XValues _=ActiveSheet.Range(Cells(2, 1), Cells(sor, 1)) .SeriesCollection(1).Name = "Vétel" .SeriesCollection(2).Name = "Eladás" .SeriesCollection(3).Name = "Záró" ‘Tengelyek, cím .SetElement (msoElementChartTitleAboveChart) .SetElement _(msoElementPrimaryCategoryAxisTitleAdjacentToAxis) .SetElement _(msoElementPrimaryValueAxisTitleHorizontal) .Axes(xlCategory).AxisTitle.Text = "állampapír" .Axes(xlValue).AxisTitle.Text = "érték" .ChartTitle.Text = "BÉT árfolyamok mozgása" ‘Létrehozás új munkalapon .Location xlLocationAsNewSheet End With End Sub

Statisztika Panel

Összeg és átlag

Programkód Hány sort összegezzünk? Function sorok() As Byte i = 1 Do While Cells(i, 1) <> "" i = i + 1 Loop sorok=i-1 End Function Melyik papírt választottuk? Function papir() As String If Reszveny.Value = True Then papir = "Részvény" If Kotveny.Value = True Then papir = "Kötvény" If Befektetes.Value = True Then papir = "Befektetési jegy" Melyik tranzakciót választottuk? Function Akcio() As Byte If Vetel.Value = True Then Akcio = 4 If Eladas.Value = True Then Akcio = 5 If Zaro.Value = True Then Akcio = 6

Összeg és átlag Private Sub Osszatlag_Click() osszeg = 0 db = 0 For i = 2 To sorok If Cells(i, 1) = papir And Akcio > 0 Then szam = Val(Cells(i, Akcio)) db = db + 1 osszeg = osszeg + szam End If Next If db = 0 Then atl = 0 If db >= 1 Then atl = osszeg / db MsgBox "Az összeg: " & FormatCurrency(Osszeg, 0) & _ vbCrLf & "Az átlag: " + FormatCurrency(atl, 0), _ vbOKOnly, "Összeg és átlag" End Sub

Minimum és maximum

Programkód Private Sub Minmax_Click() max = 0 min = 100000 For i = 2 To sorok If Cells(i, 1) = papir And Akcio > 0 Then szam = _ Val(Cells(i, Akcio)) If szam > max Then max = szam If szam < min And szam > 0 Then min = szam Next MsgBox "A legnagyobb érték: " & FormatCurrency(max, 0) _ & vbCrLf & "A legkisebb érték: " & FormatCurrency(min, 0), _ vbOKOnly, "Minimum és maximum" End Sub

Megszámolás papír szerint

Programkód Private Sub Megszamolaspapir_Click() rdb = 0 kdb = 0 bdb = 0 For i = 2 To sorok If Cells(i, 1) = "Részvény" Then rdb = rdb + Cells(i, 7) If Cells(i, 1) = "Kötvény" Then kdb = kdb + Cells(i, 7) If Cells(i, 1) = "Befektetési jegy" Then bdb = bdb + Cells(i, 7) Next i MsgBox "Részvény: " & rdb & " db" & vbCrLf _ & "Kötvény: " & kdb & " db" & vbCrLf & _ "Befektetési jegy: " & bdb & " db", _ vbOKOnly, "Megszámolás" End Sub

BÉT árfolyamok beolvasása internetről Adatok Külső adatok átvitele Weblapról Beállítások

ArPanel módosul

Diagram látványosabb

Statisztika panel módosul

Értékpapír legkisebb vételi ára

Értékpapír legnagyobb záró értéke

Adott időintervallumban forgalmazott értékpapírok záró összértéke és átlaga

Programkód Private Sub Osszegatlag_Click() mettol = CDate(Tol.Text) meddig = CDate(Ig.Text) db = 0 ossz = 0 For i = 2 To sorok If Cells(i, 2) >= mettol And Cells(i, 2) <= meddig And Akcio > 0 Then szam = Val(Cells(i, Akcio)) mennyiseg = Val(Cells(i, 6)) ossz = ossz + szam * mennyiseg db = db + 1 End If Next If db = 0 Then atl = 0 If db >= 1 Then atl = ossz / db MsgBox "Az adott időintervallumban az értékpapírok" & vbCrLf & "összege: " &FormatCurrency(ossz, 0) &" átlaga: " & FormatCurrency(atl, 0), vbOKOnly, "Összeg és átlag" End Sub

További információk Megjelenő könyv Mintapéldák A rendezvény honlapja Gazdasági feladatok Excel 2007-ben Mintapéldák http://www.jos.hu A rendezvény honlapja http://www.microsoft.com/hun/tantov2008

Somogyi Edit e.somogyi@chello.hu Köszönöm a figyelmet! Somogyi Edit e.somogyi@chello.hu