Excel VBA代码如何将文本添加到特定单元格
答
这里是列C样品:
Sub Make6()
Dim r As Range, r1 As Range, r2 As Range, r3 As Range
bry = Array("000000", "00000", "0000", "000", "00", "0", "")
Dim N As Long, v As String, L As Long
Set r1 = Range("C:C")
N = Cells(Rows.Count, "C").End(xlUp).Row
Set r2 = Range("C1:C" & N)
Set r3 = Range("C" & N + 1 & ":C" & Rows.Count)
r1.NumberFormat = "@"
For Each r In r2
v = r.Value
L = Len(v)
If L < 6 Then
r.Value = bry(L) & v
End If
Next r
r3.Value = "000000"
End Sub
它将修正ALL细胞在列C。
+0
非常感谢! – megagosha
答
Dim lastRow As Integer
Dim i As Integer
Dim sh As Worksheet
Dim cont As String
Set sh = ThisWorkbook.Worksheets("Sheet1") 'Your Sheet
With sh
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row 'Coloumn A
For i = 1 To lastRow
Cells(i, 1).NumberFormat = "@"
Do Until Len(Cells(i, 1)) = 6 'Coloumn A
cont = Cells(i, 1) 'Coloumn A
Cells(i, 1) = "0" & cont 'Coloumn A
Loop
Next i
End With
这是否适合您?你只需要编辑你想检查的颜色,你可以使用一个文本框。
欢迎来到S.O!你有尝试过什么吗?如果是这样,请提供代码,看看[tour](http://stackoverflow.com/tour)和[如何提问](http://stackoverflow.com/help/how-to-ask )。友情提醒:StackOverflow不是“我们为您代码”的服务提供商。 [VBA简介](https://blog.udemy.com/excel-macros-tutorial/) – Sgdva
请注意,如果您接受将结果放在不同的列中,则可以在不使用VBA的情况下完成此操作。然后您可以隐藏原始列。如果有选择,那么使用in-cell公式比用VBA做这样的事情总是更好。 – trincot
是的,它的更大的方法。我应该使用什么公式? – megagosha