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函数,我们可以将数字格式应用于单元格。