VBA文字|如何在VBA Excel中使用文本功能? (带有示例)

文本是excel中的一个工作表函数,但在将它与range属性一起使用时,也可以在VBA中使用,此函数的功能类似于工作表函数,并且需要使用相同数量的参数,即需要转换后为指定的数字格式。

Excel VBA文字功能

TEXT是工作表中可用的函数,但不幸的是,它不是Excel VBA中的内置函数。为了访问此函数,我们需要在VBA中使用工作表函数类对象。 Excel中的文本函数将值转换为指定的数字格式。

此函数的问题之一是参数。每当我们使用VBA工作表函数类时,我们都不会像在工作表中那样看到清晰的语法。它只是说“ Arg1”和“ Arg2”。

  • 精氨酸1 是我们需要将格式应用到的值。
  • 精氨酸2 是我们需要应用的格式,我们需要指定格式代码。

Excel中的VBA文本函数示例

以下是Excel VBA文本功能的示例。

您可以在此处下载此VBA文本Excel模板– VBA文本Excel模板

范例#1

让我向您展示VBA Excel中TEXT的一个简单示例。在Visual Basic中查看下面的代码。

代码:

 子Text_Example1()Dim FormattingValue作为字符串Dim FormattingResult作为字符串FormattingValue = 0.564 FormattingResult = WorksheetFunction.Text(FormattingValue,“ hh:mm:ss AM / PM”)MsgBox FormattingResult End Sub 

首先,我在VBA中将两个变量声明为字符串

 Dim FormattingValue作为字符串Dim FormattingResult作为字符串 

对于第一个变量,我分配了需要格式化的格式化编号。

格式值= 0.564

现在,对于另一个变量,我已分配了TEXT函数。

FormattingResult = WorksheetFunction.Text(FormattingValue,“ hh:mm:ss AM / PM”)

如果您观察到我已经应用了时间格式,即“ hh:mm:ss AM / PM”

最后,我应用了VBA消息框以显示结果。

MsgBox FormattingResult

当我运行代码时,TEXT函数会将时间格式应用于数字0.564,并显示以下结果。

因此,我们得到的时间是下午01:32:10”.

范例#2

与日期格式示例类似,我们在此示例中做了一些小的更改。下面是代码。

代码:

 子Text_Example2()Dim FormattingValue作为字符串Dim FormattingResult作为字符串FormattingValue = 43585 FormattingResult = WorksheetFunction.Text(FormattingValue,“ DD-MMM-YYYY”)MsgBox FormattingResult End Sub 

在以前的代码中,我将格式值从0.565更改为43585,并将格式样式更改为“ DD-MMM-YYYY”。

这会将格式应用于数字43585作为日期,结果如下。

将格式套用至储存格

我们已经看到了简单的示例,现在看看如何使用工作表中的单元格。对于此示例,请查看以下数据。

对于所有这些数字,我们需要应用时间格式。为此,以下代码将应用格式。

代码:

 Sub Text_Example3()Dim k作为整数,对于k = 1至10个单元格(k,2).Value = WorksheetFunction.Text(Cells(k,1).Value,“ hh:mm:ss AM / PM”)下一个k子 

该代码将遍历10个单元格并应用如下格式。

这样,通过使用VBA TEXT函数,我们可以将数字格式应用于单元格。