- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Luck Dragon: Óraátállítás
- hcl: Könnyű légierő
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Doky586: Windows telepítés utáni beállítások
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Luck Dragon: MárkaLánc
-
LOGOUT
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Fferi50
Topikgazda
válasz
m.zmrzlina
#41894
üzenetére
Szia!
Változók tekintetében nincs igazság, csak ajánlások. A VBA önmagában nem követeli meg a változók első használat előtti deklarációját sem: A változó egyszerűen létrejön, amennyiben egy értékadó utasítást adtál a változónév használatával. Pl. x=5 automatikusan létrehozza az x változót. Ez egyik oldalról nézve roppant praktikus, mert nem kell foglalkozni vele, hogy él-e a változód, hiszen az utasítással létrejön. De: Ezt a változót ebben az esetben nem ellenőrzi a VBA, sem típusra, sem tartalomra. Újabb értékadással más típusú változó lesz belőle. Ezen kívül komoly hibalehetőség is, mert egy betű elütése már egy másik változót hoz létre, nyilvánvaló szándékaid ellenére. Aztán a futtatás során keresheted a hibát napestig, mire rájössz, hogy a nap helyett véletlenül a naap (eddig nem létezett) változóhoz adtad a további számolás eredményeit.
Ezért igen erős ajánlás a VBA ellenőrzési és segítségnyújtási lehetőségeit minél jobban kihasználni. Ezt viszont csak a változók előzetes (explicit) deklarációjával érhetjük el, amikor megadhatjuk, hogy a változó milyen típusú legyen - és akkor csak olyan értéket fogad el -, privát vagy publikus legyen, esetleg megmaradjon az értéke mindaddig, amíg az Excelből ki nem léptünk(!). Ezek az opciók deklaráció nélkül (implicite) nem állnak rendelkezésre. A deklaráció egyúttal inicializálja is a változót a típusának megfelelő null/nothing/stb értékkel. Az ellenőrzés során kiderül, ha elütöttünk egy változó nevet, hiszen az nem lesz deklarálva előzetesen.
Az ellenőrzést egy modulban az Option Explicit utasítás modul eleji kiadásával érhetjük el, de ha a Tools - Options - Editor fülön a Require Variable Declaration opciót bepipáljuk, akkor a VBA minden modullapon automatikusan kiteszi a modul elejére az Option Explicit utasítást.
Tapasztalataim alapján egyértelműen hasznos az előzetes deklaráció, mindenkinek, kezdőknek pedig pláne csak ajánlani tudom. Megszokni könnyű és megkönnyíti a munkát. Hiszen deklarálni nemcsak eljárás elején, hanem menet közben is lehet, a változó első használata előtt.
Remélem ez segít a választásban.
Üdv.
Új hozzászólás Aktív témák
- OLED monitor topic
- CASIO órák kedvelők topicja!
- Kés topik
- Milyen program, ami...?
- Hosszú premier előzetest kapott az Arknights: Endfield
- HDD probléma (nem adatmentés)
- Autóápolás, karbantartás, fényezés
- Autós kamerák
- Proxmox VE
- Last contact: rejtélyes körülmények között semmisült meg a 34343-as műhold
- További aktív témák...
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- PC Game Pass előfizetés
- Thermalright Assassin X 120 V2
- MacBook Pro 16" M3 Pro 36 GB RAM, 512GB SSD, Space Black - 27% ÁFA (0431AB)
- 137 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080 (ELKELT)
- 3440 x 1440 100Hz!!! 90W PD 34" CURVED 1500R Samsung S34A650UXU - 1 év garancia!
- Logitech G29 (PS) // Számla // Garancia //
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50