Hirdetés
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- hcl: Poco F2 Pro facepalm
- urandom0: Száműztem az AI-t az életemből
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- MasterDeeJay: i7 4980HQ asztali gépben
- droidic: [Memory Leak] Az agy defragmentálása
- sziku69: Fűzzük össze a szavakat :)
- Gurulunk, WAZE?!
-
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
- Linux haladóknak
- sziku69: Szólánc.
- Steam, GOG, Epic Store, Humble Store, Xbox PC Game Pass, Origin Access, uPlay+, Apple Arcade felhasználók barátságos izgulós topikja
- Pánik a memóriapiacon
- Bestbuy játékok
- Azonnali alaplapos kérdések órája
- Hogwarts Legacy teszt
- Nintendo Switch 2
- Háztartási gépek
- Elemlámpa, zseblámpa
- További aktív témák...
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok : (12.13.)
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Vírusirtó licencek- Azonnal - Számlával - Garanciával
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most Ünnepi áron! :)
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Dell Latitude 5400 14" FHD IPS, i7 8665U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Garmin Forerunner 405 GPS óra
- BESZÁMÍTÁS! Apple Macbook Pro 16 2023 M3 Pro 36GB 512GB macbook garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 13 Mini 128GB Pink -1 ÉV GARANCIA -Kártyafüggetlen, MS3822
- ASUS ROG Cetra True Wireless Gaming fülhallgató új, garanciával!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: ATW Internet Kft.
Város: Budapest
Fferi50
