Funkcja tekstu VBA

Ten samouczek pokaże, jak używać funkcji tekstowej w VBA.

Funkcja Tekst jest używana w arkuszu programu Excel do zwracania części ciągu w określonym formacie. Funkcja Text nie jest funkcją VBA, ale można jej używać w VBA, odwołując się do obiektu Worksheet Function.

Arkusz Funkcja.Tekst

Składnia w VBA byłaby zatem następująca:

=WorksheetFunction.Text (Arg1, Arg2)

gdzie Arg1 jest oryginalnym ciągiem, a Arg2 jest formatem ciągu, który chcemy zwrócić.

1234567 PodtestWSFunction()Dim dte As StringDim strD jako ciągdte = "08/05/2021"strD= WorksheetFunction.Text(dte, "mmmm")MsgBox strDNapis końcowy

W powyższym przykładzie zmienna łańcuchowa dte przechowuje datę. Funkcja Text zwraca następnie część daty dotyczącą miesiąca.

Formatowanie liczb za pomocą funkcji tekstu

Możemy użyć funkcji tekstowej do formatowania liczb w naszym kodzie VBA.

1234567 Podformat Waluta()Dim strNum As StringDim strFormat jako ciągstrNum = "75896.125"strFormat = WorksheetFunction.Text(strNum, "$#,##0.00")MsgBox strFormatNapis końcowy

Ciąg zwrócony w powyższym przykładzie to 75 896,13 $.

Inne przykłady formatowania liczb przy użyciu funkcji tekstu to:

12345678 =Funkcja arkusza roboczego.Tekst(75896.125, "0")to zwróci: „75896”=Funkcja arkusza roboczego.Tekst(75896.125, "0.0")to zwróci: „75896.1”=WorksheetFunction.Text(75896.125, "#,##0")to zwróci: "75,896"

Jednak Excel ma wbudowaną funkcję VBA, której możemy użyć zamiast funkcji Tekst, jeśli chcemy sformatować daty i liczby w VBA. Jest to znane jako funkcja Format.

Funkcja formatu VBA

Biorąc powyższy przykład, zamiast używać WorksheetFunction.Text, możemy po prostu użyć funkcji Format, aby osiągnąć te same wyniki.

12345678 =Format(75896.125, "0")to zwróci: „75896”=Format(75896.125, "0.0")to zwróci: „75896.1”=Format(75896.125, "#,##0")to zwróci: "75,896"

Podobnie możemy użyć funkcji Format, aby sformatować fragmenty daty w ciągu.

1234567 Funkcja podrzędnego formatu testowego()Dim dte As StringDim strD jako ciągdte = "08/05/2021"strD= Format(dte, "mmmm")MsgBox strDNapis końcowy

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave