VBA szöveg - Hogyan lehet szöveges függvényt használni az Excel VBA-ban példákkal?

Tartalomjegyzék:

Anonim

Excel VBA szöveges funkció

A VBA szöveges funkció csak a VBA-ban használható. Úgy tűnik, hogy átalakítja a számokat szöveggé. De a valóságban a számokat bármilyen formátumra konvertálja, például Idő, Dátum vagy számtartomány. Ehhez engedélyezni kell, hogy ezt a funkciót osztályként engedélyezze.

Ha látjuk a VBA Text érvelését, akkor látjuk, hogy az Arg1 és Arg2 áll, az alábbiak szerint.

  • Arg1 - Itt adjuk meg az átalakítani kívánt értéket a normál formátumban.
  • Arg2 - És itt kiválasztjuk azt a formátumot, amelyben szeretnénk látni a kimenetet.

Mindkét változót karakterláncként definiáljuk.

Hogyan kell használni az Excel VBA szöveges funkciót?

Megtanuljuk, hogyan kell használni a VBA Text funkciót néhány példával az Excelben.

Itt letöltheti ezt a VBA Text Excel sablont - VBA Text Excel Template

VBA szöveges funkció - 1. példa

A szöveget vagy számokat a következő példákban különféle módon konvertáljuk a szabványos formátumba.

Kövesse az alábbi lépéseket a VBA Szöveg funkció használatához.

1. lépés: Nyisson meg egy modult, amely az alábbi ábra szerint elérhető a Beszúrás menü lapon.

2. lépés: A megnyílt VBA modulban írja be a VBA szöveg alfolyamatát az alábbiak szerint.

Kód:

 VBA_Text1 () alpont 

3. lépés: A VBA szöveg szintaxisának megfelelően két érvre van szükségünk. Tehát határozza meg az első változót karakterláncként, ahol az alábbiak szerint adjuk meg a bemenetet.

Kód:

 Sub VBA_Text1 () Dim Input1 mint karakterlánc vége Sub 

4. lépés: Most definiáljon egy másik változót, ahonnan kapjuk a kimenetet. És ez ugyanolyan húros lesz.

Kód:

 Sub VBA_Text1 () Dim Input1 mint String Dim Output As String End Sub 

5. lépés: Most fontolja meg minden véletlenszerű számot, amelyet át kell konvertálnunk a normál formátumba. Ez lehet a szám, amelyet látni akarunk, vagy bármilyen véletlenszám is. Tegyük fel, hogy ha egy decimális számot 0, 123-nak tekintünk, és megnézjük, mit kapunk.

Kód:

 Sub VBA_Text1 () Dim Input1 mint String Dim output mint String Input1 = 0, 123 End Sub 

6. lépés: Most a másik meghatározott változóban, amely a Kimenet, a VBA szöveg beillesztésére használjuk. Most ezt a funkciót munkalap funkcióként fogjuk használni, az alább látható módon.

7. lépés: Válassza ki a VBA szöveg funkciót a beépített funkciók listájából. A szintaxis szerint a változót és a formátumot fogjuk használni, amelyben Arg1 szabványos formátumba akarjuk konvertálni azt, ahová a kiválasztott számot konvertálni akarjuk.

Kód:

 Sub VBA_Text1 () Dim Input1 mint String Dim Output mint String Input1 = 0, 123 Output = WorksheetFunction.Text (End Sub 

8. lépés: Az Arg1-be írjuk az Input1 változót, amelynek a számát meg kell konvertálnunk, és Arg2 formátum lesz HH: MM: SS AM / PM.

Kód:

 VBA_Text1 () tompított bemenet1 karakterláncként halvány kimenetként karakterlánc bemenetként1 = 0, 123 kimenet = munkalapFunkció.Text (1. bemenet, "ó: hh: mm: ss AM / PM") Vége al 

9. lépés: Most használja az MsgBox-ot, hogy megnézze, mi lesz a kimenet.

Kód:

 Sub VBA_Text1 () Dim Input1 mint String Dim Output mint String Input1 = 0, 123 Output = WorksheetFunction.Text (1. bemenet, "ó: hh: mm: ss AM / PM") MsgBox kimenet vége Sub 

10. lépés: Most futtassa a kódot az F5 billentyű megnyomásával vagy a Play gombra kattintással. Megkapjuk az üzenet mezőt egy 02:57:07 AM üzenettel.

Másik alkalmat fogunk látni, ha másik számot választunk.

11. lépés: Most változtassuk meg a bemeneti számot 12345-ként, és változtassuk meg a kimenet formátumát NN-HH-ÉÉÉÉ-ban, az alább látható módon.

Kód:

 Sub VBA_Text2 () Dim Input1 mint String Dim Output mint String Input1 = 12345 Output = WorksheetFunction.Text (1. bemenet, "HH-HH-nn") MsgBox kimenet End Sub 

12. lépés: Most futtassa újra a kódot. A dátumot 1933. október 18-án kapjuk meg

Ha tudjuk a pontos számot, amellyel pontos dátumot vagy időt kaphatunk, akkor az jobb.

VBA szöveges funkció - 2. példa

Van egy másik közvetlen módszer a VBA szöveg alkalmazására. Ehhez beírunk néhány számot az excel lapba, az alább látható módon.

Kövesse az alábbi lépéseket a VBA Szöveg funkció használatához.

1. lépés: Írjon egy modulba a VBA szöveg alkategóriáját az alább látható módon.

Kód:

 Sub VBA_Text3 () Sub 

2. lépés: Válassza ki a cellák tartományát, ahol látni akarjuk a kimenetet. Tegyük fel, hogy ezek a sejtek B1 és B5 között vannak.

Kód:

 Sub VBA_Text3 () Range ("B1: B5") Érték vége Sub 

3. lépés: Most válassza ki a konvertálni kívánt cellatartományt. Ez a tartomány az A1-től A5-ig terjedő cellát tartalmazza, a Munkalap funkcióval együtt.

Kód:

 Sub VBA_Text3 () Range ("B1: B5"). Value = Range ("A1: A5"). Munkalap. Befejezés Sub 

4. lépés: Válassza ki az Index funkciót az értékelésével.

Kód:

 Sub VBA_Text3 () Range ("B1: B5"). Value = Range ("A1: A5"). Worksheet.Evaluate ("INDEX (End Sub 

5. lépés: Most fontolja meg a Szöveg funkciót, és válassza ki a konvertálni kívánt tartományt. És a formátum több nullában legyen.

Kód:

 Sub VBA_Text3 () tartomány ("B1: B5"). Érték = tartomány ("A1: A5"). Munkalap.Értékelés ("INDEX (SZÖVEG (A1: A5, " "'000000" "))") Sub befejezése 

6. lépés: Most futtassa a kódot az F5 billentyű megnyomásával vagy a Play gombra kattintással. Látni fogjuk az A oszlopban rendelkezésre álló számokat, amelyeket több nullával átalakítottak szöveggé, ami 6 számjegyű számhoz vezet a B oszlopban.

Most lássuk, mi történne, ha megváltoztatnánk a kimeneti formátumot újra nulláról idő formátumra.

7. lépés: Az Arg2-ben tegye az időformátumot mint HH: MM: SS, és változtassa meg a kimeneti tartomány celláját C1-ről C5-re anélkül, hogy megzavarná az előző kódból nyert kimenetet.

Kód:

 Sub VBA_Text3 () Range ("C1: C5"). Value = Range ("C1: C5"). Workheet.Evaluate ("INDEX (TEXT (A1: A5, " "hh: mm: ss" "))" ) Befejezés Sub 

8. lépés: Futtassa újra a kódot. Látni fogjuk, hogy a C oszlop meg lesz töltve az alapértelmezett időformátummal.

Próbáljuk meg egy másik kísérletet.

9. lépés: Ennek során megváltoztatjuk a kimeneti cellatartományt D1-ről D5-re, ahol a VBA szöveg jelenik meg. És változtassa meg az Arg2 dátumformátumát, amely NN-HH-ÉÉÉÉ, az alább látható módon.

Kód:

 VBA_Text3 () tartomány ("D1: D5"). Érték = tartomány ("D1: D5"). Munkalap.Értékelés ("INDEX (SZÖVEG (A1: A5, " "NN-HH-ÉÉÉÉ" "))" ) Befejezés Sub 

10. lépés: Futtassa újra a kódot. Ezúttal látni fogjuk, hogy a dátum a D. oszlopban látható. És ezek a dátumok abban a formátumban vannak, vagy NN-HH-NN.

Így változtathatjuk meg a számokat bármilyen kívánt formátumban.

Előnyei és hátrányai az Excel VBA szöveges funkcióban

  • Ezt könnyű végrehajtani.
  • A számokat bármilyen formátumban megváltoztathatjuk, amelyet látni akarunk.
  • Nem konvertálhatunk szöveget a kívánt számformátumba.

Dolgok, amikre emlékezni kell

  • A VBA szöveg csak számokat konvertál számokra. A számok formátuma azonban a szokásos formátum lesz, például a dátum, az idő, a dátum és az idő kombinációja, vagy bármely számjegy sorrendje.
  • Ha a számokat az előző nullák formátumára alkalmazza és módosítja, akkor tegye az aposztrópot a nullák elé. A számokat szöveggé konvertálják, és a nullák megjelennek.
  • Ha megpróbálunk bármilyen szöveget konvertálni a VBA Szöveggel, akkor csak a Szöveg formátumú output lesz.
  • A pontos eredmény eléréséhez tudnunk kell a számkombinációt, amely megadja a pontos időt és dátumot, amelyet látni szeretnénk.
  • Ha kész, mindig mentse a teljes kódot makro-engedélyezve formátumban, hogy a kód ne vesszen el.

Ajánlott cikkek

Ez egy útmutató a VBA szöveges funkcióhoz. Itt megvitatjuk, hogyan lehet használni a Szöveg funkciót az Excel VBA-ban, a gyakorlati példákkal és a letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket -

  1. Másolás beillesztés funkció a VBA-ban
  2. Az Excel függvény alsávja
  3. A VBA felirat a tartományon kívül esik
  4. Excel ISNUMBER Formula