我在单元格中有一个7702216772
个数字。如果我在第一个数字前加'
并点击Enter
Excel
将数字转换为文本,并在单元格的左上角放置一个绿色三角形:
我有许多相似数字的行,所有这些都需要转换成文本。但是,点击每个并在第一个符号前添加'
并点击Enter
会花费很多时间。有没有办法以编程方式进行呢?
我尝试使用公式:="'"&H4
但它没有达到预期效果 - 绿色三角形永远不会出现在结果单元格中。
我也尝试将单元格格式设置为Text,但在这种情况下也不会出现绿色三角形。
我需要绿色三角形出现在左上角,就像图片一样!
答案 0 :(得分:2)
如果您的所有号码都在一列中,则以下代码将执行此操作:
Sub foo()
Dim ws As Worksheet: Set ws = Sheets("Sheet1")
'declare and set your worksheet, amend as required
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
'get the last row with data on Column A
For i = 1 To LastRow 'loop from row 1 to last
ws.Cells(i, "A").Value = "'" & ws.Cells(i, "A").Value 'add the ' before the number
Next i
End Sub
更改" A"到你正在使用的任何一列。
答案 1 :(得分:1)
只需Select
您要处理的单元格并运行此短宏:
Sub Textify()
Dim rng As Range, r As Range
Set rng = Selection.Cells.SpecialCells(2, 1)
For Each r In rng
r.Value = "'" & r.Value
Next r
End Sub
答案 2 :(得分:1)
非VBA答案;我在这个答案中使用了G列,但这取决于你的数字在哪里。你必须改变单元格,但我认为你会对此有所了解。
="'"&G4
Ctrl+D
将其填充到G列值的长度。 Paste Special
并选择Values
答案 3 :(得分:0)
我已经多次测试了它并且它始终有效
Cells(xx, xx).FormulaR1C1 = "'" & Cells(xx, xx).Value
同样适用于ActiveCell或您喜欢的任何内容。