Példák a vba funkciók használatára

A felesleges karakterek eltávolítása

Gyakran a program sorai tartalmaznak felesleges szóközt a sor végére vagy elejére, amelyet törölni kell, mert a szálon lévő idegen vezető vagy utólagos terek problémákat okozhatnak a programban.

A VBA-ban három olyan funkció van kialakítva, amely eltávolítja a vezető és a záró tereket egy karakterláncból: LTrim, RTrim, Trim. Ne feledje, hogy ezek a funkciók nem változtatják meg az eredeti karakterláncot, de a karakterlánc egy példányát extra térközökkel távolítják el.

Példák a vba funkciók használatára

A hossza meghatározása

A string hossza általában szükséges tudni, hogy mikor formázás üzeneteket a felhasználót, vagy a formázási adatok húr bevitt eljárás Word vagy Excel munkalap dokumentumot. A VBA erre a célra használja a Len funkciót. A következõ felsorolásban a zárójelek és a szó megjelölése között két szóköz van.


Példák a vba funkciók használatára

Legyen óvatos a rögzített hosszúságú vonalakkal. Mivel egy fix hosszúságú string mindig azonos hosszúságú, a Len funkció mindig visszaadja a deklarált húrhosszúságot, függetlenül a húr tényleges hosszától. Például, ha a string változó StrokeName fix hosszúságú, hossza 15 karakter tulajdonképpen a „Sun”, a Len (StrokeName) függvény eredménye 15. Annak érdekében, ebben az esetben, hogy ismerjük a tényleges hossza a húr (esetünkben - 6), használat A következő funkciók kombinációja: Len (Trim (StrokeName)).

Hasonlítsa össze és keresse meg a karakterláncokat

A VBA-ban két funkció segít összefoglalni a stringeket: StrComp, InStr.

StrComp funkció

StrComp (String1, String2 [, Összehasonlítás])

String1, String2 - minden olyan két karakterlánc, amelyet össze kell hasonlítani.

Az összehasonlítás egy opcionális argumentum, amely a következő előre definiált konstansok bármelyike ​​lehet (ha kihagyja, az aktuális opció összehasonlítás):

  • vbBinaryCompare - két sor bináris összehasonlítása;
  • vbTextCompare - két vonal szöveges összehasonlítása;
  • vbDatabaseCompare - csak a Microsoft Access programban használható.

Amikor a StrComp futtatása megtörténik, az alábbi értékek egyike visszakerül:

  • -1, ha a String1 kisebb, mint a String2;
  • 0, ha a String1 és a String2 egyenlő;
  • 1, ha a String1 nagyobb, mint a String2.


Példák a vba funkciók használatára

A fenti listában, szöveges módban két sorozatot hasonlítunk össze: "Default string" és "Default string". Az összehasonlítás eredménye 1, azaz 1. Az "Alapértelmezett karakterlánc" nagyobb, mint az "Alapértelmezett szöveg".

Kísérletezzen a StrComp funkció működésének jobb megismerésére.

InStr funkció

Az InStr funkció lehetővé teszi annak meghatározását, hogy egy sor tartalmaz-e egy másik szöveget.

StrComp ([Start,] String1, String2 [, Összehasonlítás])

String1, String2 - minden érvényes karakterlánc kifejezés. A függvény ellenőrzi, hogy a String1 String2-ben van-e.

Az összehasonlítás egy opcionális argumentum, amely a következő előre definiált konstansok bármelyike ​​lehet (ha kihagyja, az aktuális opció összehasonlítás):

  • vbBinaryCompare - két sor bináris összehasonlítása;
  • vbTextCompare - két vonal szöveges összehasonlítása;
  • vbDatabaseCompare - csak a Microsoft Access programban használható.

A Start egy opcionális argumentum, ez egy numerikus kifejezés, és jelzi a karakter helyét a String1-ben, ahonnan az ellenőrzés megkezdődik.

InStr visszaadott szám jelzi a helyzetét a karakter karakterlánc1, Karakterlánc2 ahol azt találták. Ha InStr nem találja a karakterlánc1 Karakterlánc2, visszatér 0. Ha Karakterlánc1 (vagy Karakterlánc2) egy Null értéket, a függvény is visszaadja, Null.


Példák a vba funkciók használatára

Szétválaszt egy sort

Néha szükségessé válik a vonal megszakítása az alkotóelemekre. A VBA-ban ezt a feladatot három funkció határozza meg: Bal, Jobb, Mid.

Bal funkció

Balra (karakterlánc, hossz)

String - minden érvényes karakterlánc kifejezés.

A hossza bármilyen numerikus érték.

A függvény visszaküldi a String egy példányát, kezdve az első karakterrel és a Length által meghatározott karakterek számával. Ha a hossza nagyobb, mint a String tényleges hossza, akkor a teljes string kifejezés String visszakerül.

Jobb funkció

Jobb (karakterlánc, hosszúság)

String - minden érvényes karakterlánc kifejezés.

A hossza bármilyen numerikus érték.

A függvény a karakterlánc egy példányát adja vissza, az utolsó karaktertõl kezdõdõen, és a hossza által megadott karakterek számát jobbra-balra. Ha a hossza nagyobb, mint a String tényleges hossza, akkor a teljes string kifejezés String visszakerül. A jobb funkció mindig karaktereket másol a sor végétől a kezdetig.

Középfunkció

Mid (String, Start, [, Length])

String - minden érvényes karakterlánc kifejezés.

Hossz, Start - minden numerikus érték.

A Mid funkció visszaadja a String egy példányát, kezdve a String karakterpozíciójával, amelyet a Start argumentum határoz meg. Az opcionális Hosszú argumentum határozza meg a Mid String-re másolandó karakterek számát. Ha a Start nagyobb számot tartalmaz, mint a String tényleges hossza, üres karakterláncot kapunk.


Példák a vba funkciók használatára

Olyan szimbólumok, amelyeket a billentyűzetből nem lehet megadni

Gyakran előfordul, hogy be kell írnia egy karaktert, amelyhez nincs billentyű a billentyűzeten (például egy szerzői szimbólum). Másik helyzet, amikor a VBA szolgáltatási szimbólumot be kell vonni a sorba (a leggyakoribb esetben a kettős idézőjelek felvétele).

Olyan karakterek bevitelére, amelyek nem írhatók be a billentyűzetből, vagy amelyeknek különleges jelentése van a VBA-n, a Chr funkciót használják.

A Charcode bármilyen numerikus kifejezés, amely a számítógép által használt karakterkészlet érvényes kódja. Egy 0-tól 255-ig terjedő egész szám legyen.

A Chr függvény egyetlen karakter kódját argumentumként veszi fel, és egy olyan karakterláncot ad vissza, amely tartalmazza a kódnak megfelelő karaktert. Ezt a funkciót használta a fenti listákon egy vonal mozgatására, amikor az üzenet megjelenik a Chr (13) képernyőn.

Mivel a használt karakterek, hogy egy új vonal, nagyon fontosak, ha a formázás üzenetek és egyéb húr adatok manipulált VBA-eljárást, több előre definiált konstansok ezeket a karaktereket, így nem volt szükség a Chr függvény:

  • A vbCr a kocsi vissza karakter. A Chr (13)
  • A vbLf egysoros offset karakter. A Chr (10)
  • A vbCrLf vonalként kocsi vissza + offset karakter. A Chr (13) + Chr (10)
  • A vbTab egy lap karakter. A Chr (9)


Példák a vba funkciók használatára

Példák a vba funkciók használatára

Adatértékek formázása

Nagyon gyakran, az adatok formátuma a program kimenetén, egyik vagy másik okból, nem elég nekünk. Ezt a feladatot megoldja a Formátum funkció.

A Formázás VBA funkció megegyezik az Excel formátumfunkciójával, és ugyanazt az adatkitöltési helyet használja.


Formátum (Expression [, Formátum [, Firstday of the week [, Firstweekofyear]]])

Expression - bármely érvényes kifejezés (kötelező érv).

Formátum - egy megnevezett vagy felhasználó által megadott formátum érvényes kifejezése.

A hét első napja állandóan meghatározza a hét első napját.

Az elsőéves év egy állandó, amely meghatározza az év első hetét.

A Formázás funkció használatához előre meghatározott formátumot kell megadnia. vagy hozzon létre egy képet egy bizonyos formátumban. helyfoglalók használatával.


Példák a vba funkciók használatára

A Formátum funkcióval használható formátumok

Kapcsolódó cikkek