-
Fototrend
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
alfa20
#35979
üzenetére
Szia!
Ilyen esetben a "háromdimenziós" változó megadásra van szükség, meg kell mondani a makróban, melyik modulban van a változó.
A megoldás:Private Sub start()
ThisWorkbook.makroFileWB.Sheets(1).Range("A1") = "1000"
End SubIgen, kicsit bizarrnak hat, hiszen a makroFileWB változó tartalma a ThisWorkbook objektum, viszont magát a változót a ThisWorkbook. modulban deklaráltad.
Másrészt ne felejtsük el azt sem, hogy a ThisWorkbook objektum és az ActiveWorkbook objektum nem feltétlenül ugyanarra a munkafüzetre hivatkozik...bár alapból gondolhatnánk akár ezt is.
A ThisWorkbook mindig a makrót elindító munkafüzet lesz, az ActiveWorkbook pedig, mint a neve is mutatja, az éppen aktív munkafüzet.
Azt javaslom, hogy globál/publikus változókat mindig általános modulban deklarálj és a modulnévvel így könnyen tudsz rá hivatkozni: modulnév.változónévJavaslom, nézd át a változók élettartama és hatóköre részt a VBA helpben.
Üdv.
Új hozzászólás Aktív témák
- Részletre elérhető , BankMentes lehetőség Dell Alienware AW3225QF 31.6 4K QD OLED Gaming Monitor
- 27% - GIGABYTE MO34WQC2 Karcos OLED Monitor! 3440x1440 / 240hz / 0.03ms / FreeSync!
- HIBÁTLAN iPhone 13 Mini 256GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS4428
- GYÖNYÖRŰ iPhone 14 Pro Max 128GB Space Black - 1 ÉV GARANCIA -Kártyafüggetlen, MS4332
- Akciós áron eladó HP Dragonfly G3 /I7-1265U/32 GB/512B SSD/13,5"/FHD+/400nit/Touch
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50