Elismerése karakternél
Ez a könyv segít elsajátítani a VBA integrált fejlesztői környezet, és megtanulják, hogyan kell programozni a VBA-ban a tárgyak használata, azok tulajdonságait, módszerek és eseményeket. Vizsgálat programozási technikák olyan példák illusztrálják, amelyek segítségével azonnal kipróbálni a gyakorlatban. A megszerzett tudás lesz képes alkalmazni a kiigazítás és javítása népszerű Office alkalmazások, többek között az Office XP alkalmazások és a saját alkalmazásokat.
A könyv azoknak készült, akik mennek gyorsan és könnyedén megtanulják, hogyan kell programozni a Windows, a VBA.
Könyv: VBA kezdőknek
Elismerése karakternél
Elismerése karakternél
Használjon KeyPress esemény, KeyDown és KeyUp, hogyan reagálnak a felhasználók karakternél. KeyPress esemény hasznos kimutatására hagyományos billentyűk „típus” szimbólumokat (betűk, számok, írásjelek), ha kell feldolgozni a bevitt információk a szövegmezőbe, vagy egy legördülő lista. Ezzel az eseménnyel, elismeri, hogy sok fajta kombináció
KeyDown esemény és a KeyUp, éppen ellenkezőleg, ismeri szinte bármilyen billentyűkombinációt küldeni őket, beleértve a típus a furcsaság
A 10. fejezet, megbeszéltük az alapvető technikákat, hogy megbizonyosodjon arról, hogy a felhasználó az űrlapon megadott pontos információ. Itt fogunk beszélni néhány trükköt.
Abban az esetben, szövegdobozok és kombinált listák néhány szimbólumok adatbevitel nem megengedett. Használja KeyPress eseménykezelő eljárás megszüntetése érvénytelen karaktert a képernyő esetén a nyomtatás, a felhasználó által. Az alábbi kód segítségével adja betűk és számok:
Private Sub txtSerial Number_KeyPress (ByVal KeyAscii _
„Minden a következő blokk feltétele:
Ha Chr (KeyAscii) <"0" Or _
(Chr (KeyAscii)> "9" Chr (KeyAscii) <"A") Or _
(Chr (KeyAscii)> "Z" és a chr (KeyAscii) <"a") Or _
Chr (KeyAscii)> "Z" Akkor
MsgBox „Érvénytelen karakter!”
KeyAscii = 0 „elutasítása a szimbólum
Igen, bevallom, hogy én itt alkalmazott feltétel meglehetősen hosszú, de működik. Amint az üzemeltető Ha. Akkor azt észleli érvénytelen karaktert, az üzenetet róla. Aztán jön az üzemeltető KeyAscii = 0; KeyAscii érv eseményhez KeyPress, ezért használják, mint egy helyi változó ebben az eljárásban. Változó értékét megváltoztatja a karakter kódot küldött szöveges mezőbe. Mivel a szöveg doboz maga nem érzékeli a jel, amely a 0 kódot, a felhasználó beírta érvénytelen karaktert nyom nélkül eltűnik.
Értékének megváltoztatása KeyAscii érv lehetővé teszi, hogy módosítsa hibás bejegyzéseket a jobb oldalon. Például a következő eseményt eljárást lehet használni, hogy megjelenjen, és tárolja a felhasználó által beírt szöveget egy szöveges nagybetű:
Private Sub txtSerial Number_KeyPress (ByVal KeyAscii _
Végző kezelő az átalakítás szükséges a használata három funkció, beágyazott egyik a másikban. Mivel KeyAscii egy numerikus karakterből álló kódot, először meg kell alakítani a kódot egy karakterlánc keresztül Chr függvény, akkor lefordítani egy string nagybetűs segítségével UCase végül ismét átalakítani a karakterláncot egy egész ASC.
Ha azt szeretnénk, hogy még egyszer ellenőrizze a kontroll érték minden változást hozzon létre egy eseményt eljárást, vagy használja kész az előző alfejezetben. De néha előnyös, hogy elhalasztja az adatokat, amíg a felhasználó befejezte belépés teljesen. Néhány hálás lesz a lehetőség, hogy segítség nélkül helyes adatbevitelt, mielőtt véglegesen adja át az adatokat a vizsgálati program, - ez úgy érzékelik, mint egy közvetett elismerését azok mentális képességek.
Elhalasztja a teszt van értelme, és ha ez hosszú időt vesz igénybe. Ha van összehasonlítani a bemenő adatok adatok bármely adatbázis vagy az internetről, akkor valószínűleg nem akarja kényszeríteni a felhasználót, hogy várjon, amíg a program megkeresi az adatok összehasonlítása után minden egyes gombnyomás, és minden kattintás az egér gombját.
A teszt a kontroll érték, miután a felhasználó beírta teljesen, hozzon létre egy eseményt eljárás BeforeUpDate. Ezek az események fordulnak elő, ha a felhasználó rákattint egy másik vezérlő, prések
Private Sub txtSerial Number_Change ()
Ha Len (t xt Serial Number.Value)> Ezután 5
MsgBox „Ismétlés a karakterek túl sok ..”
Néha van értelme, hogy elhalasztja a szkennelési vezérlő adatokat a pillanat, amikor a felhasználó rákattint az OK gomb bezárja az űrlapot. Meg kell csinálni, ha a vizsgálati kritériumok értékeit felhasználva több ellenőrzések formában. Ha ezt a típusú vizsgálat, helyezze a megfelelő kódot a Click esemény eljárást az OK gombra. Tegyük fel, hogy a fejlődő formája, amely lehetővé teszi a felhasználó számára, hogy belépjen időpontot jövő fontos eseményekről. A forma egy listát, amelyben a felhasználó megadhatja, hogy mennyi ideig az esemény előtt kell kérni tőle. Ha a felhasználó a menetrend néhány találkozót holnap, de kérni fogja felidézni két nappal előtte, akkor jelentse tilalmáról szóló ilyen adatokat, ha a felhasználó rákattint az OK gombot. Így nem kell kérni a felhasználót, hogy adatokat bevinni kontrollok egy bizonyos elkerülése érdekében hibaüzenetek.