15
Alapszint

Visual Basic for Application (VBA)

  • Upload
    sofia

  • View
    47

  • Download
    2

Embed Size (px)

DESCRIPTION

Visual Basic for Application (VBA). Alapszint. Excel bevezető feladatok. Nyiss meg egy új, üres munkafüzetet! Hozd létre benne a szorzótáblát! Képletet csak a B2 cellába írj, majd azt másold jobbra illetve lefelé!. Excel bevezető feladatok. - PowerPoint PPT Presentation

Citation preview

Page 1: Visual Basic  for Application  (VBA)

Alapszint

Page 2: Visual Basic  for Application  (VBA)

Nyiss meg egy új, üres munkafüzetet! Hozd létre benne a szorzótáblát! Képletet

csak a B2 cellába írj, majd azt másold jobbra illetve lefelé!

A B C D E F G H I J K1 1 2 3 4 5 6 7 8 9 102 1 1 2 3 4 5 6 7 8 9 103 2 2 4 6 8 10 12 14 16 18 204 3 3 6 9 12 15 18 21 24 27 305 4 4 8 12 16 20 24 28 32 36 406 5 5 10 15 20 25 30 35 40 45 507 6 6 12 18 24 30 36 42 48 54 608 7 7 14 21 28 35 42 49 56 63 709 8 8 16 24 32 40 48 56 64 72 8010 9 9 18 27 36 45 54 63 72 81 9011 10 10 20 30 40 50 60 70 80 90 100

Page 3: Visual Basic  for Application  (VBA)

A http://vacip.web.elte.hu/excel honlapon a feladatok mappából töltsétek le a VBA.xls-t, és oldjátok meg a benne található feladatokat!

Page 4: Visual Basic  for Application  (VBA)

Makró rögzítő használatával készíts makrót, ami: A munkalap elejére beszúr két sort, ahova

fejlécként személyes adatok kerülnek (név, telefon, cégnév, osztály stb., csak kreatívan! )

Az aktuális cella hátterét világoskékre, betűit pirosra színezi, a tőle jobbra található cellába *-ot ír, és az eredeti alattiba áll!

Page 5: Visual Basic  for Application  (VBA)

Makró rögzítő használatával készíts makrót, ami: A VBA.xls szűrő munkalapjáról egy új

munkalapra (előre hozd létre) kimásolja egymás alá a részleg vezetők nevét, és a hozzájuk tartozó egyenleget!A makró csak egy sort csináljon meg, aztán álljon a következő sor elejére!

Page 6: Visual Basic  for Application  (VBA)

Készítsd el az itt látható elrendezést!

Készíts makrót, ami a középső oszlopba „összefésüli” a két számsort, azaz egyet innen, alá egyet onnan vesz! Csak egy sort csináljon meg a makród, aztán álljon a következő sorra!

1 2

3 4

5 6

7 8

9 10

11 12

13 14

15 16

17 18

Page 7: Visual Basic  for Application  (VBA)

Nyisd meg a VB Editort (excelben alt+F11)

A Nézet (View) menü Próbaablak (Immediate) parancsát válaszd ki! Az ide írt egysoros parancsok azonnal

végrehajtódnak az Excelben; így ez az ablak kiválóan alkalmas egyszerű VBA parancsok kipróbálására.

Próbáld ki a következő parancsokat!

Page 8: Visual Basic  for Application  (VBA)

Workbooks.add ?workbooks.count Workbooks.close Kurzorral lépj vissza az első parancsra, és

az Enter többszöri megnyomásával hajtsd végre 4-szer!

Válaszd ki az egyik munkafüzetet, majd: activeworkbook.close

?Activeworkbook.name

Page 9: Visual Basic  for Application  (VBA)

Workbooks(„Munkafüzet3”).close Workbooks(„Munkafüzet4”).activate Workbooks(2).activate ?activeworkbook.saved

Megadja, hogy el van-e mentve. Mivel nem volt benne változás, ezért mentettnek tekinti. A workbooknak ezt a tulajdonságát állíthatjuk is:

Activeworkbook.saved=false Most próbáld ismét lekérdezni a „mentettségi”

állapotát, majd zárd be kézzel az adott munkalapot!

Page 10: Visual Basic  for Application  (VBA)

Eddig a workbooks gyűjteménnyel és objektumaival foglalkoztunk, nézzük most a worksheets gyűjteményt!

Worksheets.add Ezzel az aktív munkafüzethez adtunk hozzá egy

újabb munkalapot. Workbooks(1).worksheets.add

A legkorábban megnyitott munkafüzethez adunk hozzá egy új munkalapot

Próbálj meg egy meghatározott munkafüzethez új lapot adni!

Workbooks(”Book1”).worksheets.add

Page 11: Visual Basic  for Application  (VBA)

Worksheets(1).name=”elso” Lehet halmozni az élvezeteket:

?worksheets.add.name Ez a parancs hozzáad egy munkalapot az aktív

munkafüzethez, majd kiírja a nevét. Worksheets(”elso”).copy before:=

workbooks(”munkafüzet2”).worksheets(2) ?sheets.count

Page 12: Visual Basic  for Application  (VBA)

?Activewindow.caption Activewindow.caption=”Haha” Most próbáld meg ugyanezt a parancsot

használni az ablk feliratának átállítására! Application.quit

Page 13: Visual Basic  for Application  (VBA)

Cells.select A cellák gyűjtemény összes elemét

kiválasztja, tehát kijelöli az összes cellát. Cells(x).select

X egy tetszőleges szám; a cells gyűjtemény annyiadik elemét választja ki a parancs. Ennél kicsit kezelhetőbb forma:

Cells(x,y).select Érték is adható:

Cells(x,y).value=”Helló” ?Cells(x,y).value

Page 14: Visual Basic  for Application  (VBA)

Range(”A1”).select Range(”b1:d12”).select

Tartományt jelöl ki Range(”A5”).activate

Mi a különbség a .Select és a .Activate között? Kísérletezz!

Hogyan lehet vajon a többszörös kijelölést megoldani? Range(”A3”).interior.colorindex=3

Egy cella minden tulajdonsága állítható

Néha van értelme halmozni: Range(Cells(x,y),Cells(i,j)).Select

Page 15: Visual Basic  for Application  (VBA)

Activecell.Offset(s,o).Activate Selection.offset(s,o).select

Mi a különbség? Activecell.offset(1,0).activate

Az aktív cella alattit választja ki. Hogyan lehet felfelé léptetni? És jobbra hármat? Mikor adnak hibát a parancsok?

Activecell.offset(0,-1).value=”Helló” Nem csak az aktív cellához lehet

viszonyítani Range(”B2”).offset(1,2).select