Új hozzászólás Aktív témák
-
ArchElf
addikt
válasz #90999040 #1422 üzenetére
Rájöttem közben mi lehet a probléma...
Mivel a class futásidőben generálódik, így lehet, hogy két futáskor nem ugyanazt a signature-t adja neki a fordító. Így hiába tárolom el az osztályt egy ideiglenes tárban (a memóriában) két futtatás között, a következő futtatáskor már "más" RelStore class generálódik meg, amire a fordító nem talál leírást, és nem tud hozzáférni a metódusokhoz sem.
Megnéztem közben, a helytelenül visszaadott osztályoknál a
VarType(rs) 13-at ad vissza:
vbDataObject - 13 - A data-access object
A TypeName meg Unknown-t...
Kénytelen leszek sima stringekkel dolgozniAE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz #90999040 #1429 üzenetére
Közvetlenül nem, kell írni hozzá egy COM Wrappert (legyen akár natív, akár .NET assembly). Pár dologra még oda kell figyelni a wrappelésnél, pl. struct nem használható. Ha valaminek a visszatérési vagy bemeneti értéke struct, akkor azt vagy szét kell szedni a com hívásban, vagy be kell csomagolni egy osztályba (és a wrapperben kibontani).
Oly: Lehet, hogy segít...
AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
martonx
veterán
válasz #90999040 #1429 üzenetére
de miért kell windows API függvény? Emberünk azt kérte, hogy ne csak office-on belül tudja használni az összehozott programját. Erre javasoltam a vbscriptet.
Persze csinálhat belőle VB.Net-et is (vagy tőlem akár powershell-t, vagy bármit), csak a vbscript készítéshez elég egy file átnevezés, és máris futtathatja bárhonnan.Én kérek elnézést!
-
Zsargon89
csendes tag
válasz #90999040 #1430 üzenetére
Szeretném lecserélni, de Sajna a VB studio 2008hoz (meg máshoz se) nem értek
Elindítom a prpgramot, és New Project- de ott kidob több dolgot is.
Itt meiket kell kiválasztanom? próbáltam úgy hogy ezekközüll kiválasztottam egyet, és ott adtam hozzá modult, s abban szerettem volna írni, de különböző projecteknél különböző hiba.
-bár mikor Formot inítottam, ott nem írt ki hibát a program (modulban), de hiába töröltem a formot, futtatásnál mégis előhozott egy üres ablakot. -
vilag
tag
válasz #90999040 #1473 üzenetére
Bocs, de nekem ez nem eléggé világos (ez mondjuk az én hibám). Megtennéd, hogy részletezed kicsit?
Elmondanád, hogy a fenti problémát hogyan oldanád meg ezzel a módszerrel?
Mert ugyan most működik, de ha lehet akkor egyszerűsítek rajta, plusz a módszer ismerete biztosan nem fog káromra válni.Köszi!
-
Cpt. Flint
tag
válasz #90999040 #1482 üzenetére
Engem igazán az izgatna, hogy változót hogy tudok átadni mondjuk excelből wordbe.
Mert itt a legnagyobb problémánk az volt, hogy a körlevél rekordszám az excelben megfelelő programrésszel meghatározott/szűrt sorok száma kell legyen, de ezt a változót csak az excel tábla egyik cellájából bírtuk kibányászni Wordből indított DDE hívással, ami egy baromi körülményes és vacak megoldásnak tűnik nekem:
lngChannel = DDEInitiate(App:="Excel", Topic:="akarmi.xls")
ig2 = DDERequest(Channel:=lngChannel, Item:="r11c17")
Application.DDETerminateAll
Többek között ez csak a "Munka1" lapról szed, én nem tudtam elérni, hogy más munkalap legyen a forrás, aztán csak a R1C1 stílusú hivatkozás működött; illetve ha nem volt látható a hivatkozott cella (mondjuk el volt rejtve vagy össze volt csukva az adott sor v. oszlop), akkor valami nem jó értéket adott vissza (karakterként négyzet, chr$-ként talán 13?).
Sajnos a DDERequestről eddig nem sikerült normális (a VBA helpnél bővebb) leírást találnom, úgyhogy nem is vagyok tisztában vele, hogy esetleg valami más, értelmesebb, kezelhetőbb formában használható-e. -
öcsi-bácsi
csendes tag
válasz #90999040 #1489 üzenetére
Köszi, rendes vagy.
Közben találtam egy megoldást:
'visszhang kikapcs
Application.ScreenUpdating = False
"makró fut"
Application.ScreenUpdating = TrueAmi viszont közben kérdésessé vált: adatokat másolok egy űrlapról makróval, egyik excel lapról a másikra, viszont szándékaim szerint a második lap egyfajta adatbázis lesz, amit ellátnék lapvédelemmel. Viszont a makróm természetesen megáll, ha a második lap védelmét bekapcsolom.
Kérdésem: hogyan másolhatna a makróm mégis ide adatokat? -
vilag
tag
válasz #90999040 #1761 üzenetére
Igen, ezzel csak az a baj, hogy ez rengeteg plusz melót igényel, tekintve, hogy minden egyes vezérlő Enter() eseményéhez meg kellene írni.
Az ActiveControl-al már próbákoztunk másik programban, hasonló ok miatt de az nem működik megfelelően.
Ha pl. van egy formod amin belül van egy frame, amint belül pedig egy vezérlő és a kurzor a vezérlőben villog, tehát elvileg ugye a vezérlő az aktív, az ActiveControl azt fogja eredményül adni, hogy az aktív kontrol a userform.
Ezúton is köszönjük neki. Így el nem tudom képzelni, hogy ez mire lehet jó.Egyébként találtunk akkor erre megoldást, de az hack volt.
Szóval nekem valami jóval egyszerűbb megoldásra lenne szükségem, mert a framen belül és kívül is van jónéhány vezérlő.
Üdv, vilag
Új hozzászólás Aktív témák
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Autós kamerák
- Android alkalmazások - szoftver kibeszélő topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Ukrajnai háború
- Videó stream letöltése
- Gaming notebook topik
- Motorola Moto G24 Power - hol van az erő?
- Milyen videókártyát?
- Helldivers 2 (PC, PS5)
- További aktív témák...