Excel - 如何获取表达式文本而不是值

时间:2013-07-12 08:02:15

标签: excel

我遇到了大量Excel数据的问题。其他人输入了这样的数据:

A
10
10:12
11:12:15

我的任务是将其转换为以下内容:

B
Pig
Pig:Koala
Dog:Koala:Bird

我试图使用替代品:

= SUBSTITUTE(A1, "10", "Pig")

但问题是,Excel将A列中的值识别为其他数据类型(数字,时间......),而SUBSTITUTE对这些类型不起作用。

我该如何解决这个问题?

谢谢。

2 个答案:

答案 0 :(得分:2)

此函数将返回与excel显示的字符串匹配的字符串。

Option Explicit

Function ToText(r As Range) As String
If r.Count <> 1 Then
    ToText = "#ERR!"
    Exit Function
End If
ToText = IIf(r.NumberFormat = "General", CStr(r.Value), Format(r.Value, r.NumberFormat))
End Function

例如,如果10:11:12在A1中,excel认为是时间,并且采用这种格式,那么=ToText(A1)将返回字符串10:11:12,然后您可以操作和其他任何文字一样

将其放入电子表格中的模块( ALT + F11 ),以便该功能可用于Excel

答案 1 :(得分:0)

Select column A from first to last record and right click on that,
then change the format by clicking Format cells...
and choose whatever format you want...

喜欢

enter image description here

然后使用 SUBSTITUTE(A1,“10”,“Pig”)方法