有没有办法使用单元格的格式化输出,而不是未格式化的值?



有没有办法一般地抓取数字格式单元格的文本输出?例如:

(A(我有一个格式为百分比的单元格 - 该单元格很可能显示"20%",同时包含值0.2 (B( 我有另一个格式为货币的单元格,显示"$20,000",其中实际值为 20000

我希望能够(通常(提取这些单元格的文本结果,而无需提前知道特定单元格中使用的格式是什么。所以想象一个函数

=单元格文本(A1(

  • 如果我将其指向 (A(,我会得到"20%"作为结果
  • 如果我把它指向(B(,我会得到"20,000美元"作为结果

Excel中已经有这样的东西了吗?理想情况下,我想在没有 VBA 的情况下完成它......

谢谢,肯

在VBA中,获取某些单元格使用的格式化内容

SomeCell.Text

其中SomeCell是设置为单个单元格的范围对象。

据我所知,您需要如前所述 VBA。例如:

Sub TestFormat()
MsgBox GetCellFormatValue(ActiveCell)
End Sub
Function GetCellFormatValue(r As Range) As Variant
If r.Cells.Count > 1 Then Exit Function
On Error Resume Next
GetCellFormatValue = Format(r.Value, r.NumberFormat)
End Function

最新更新