如何使用 VBA 遍历 Excel 中的一列直到一个空单元格并替换该单元格的一部分?
How to loop through one column in Excel using VBA until an empty cell and replace a part of that cell?
我在 excel 中有一列是我从程序导入的,如果这些条代表单元格,它总是以这种格式导入它,| |尾随空格和 <> 表示负数。正数是这样出来的,| 758.92 美元|也有尾随空格。数字格式是货币,我希望能够对这些数字求和,而不必向下移动 100 或 200 个单元格的列并更改所有这些。
我启动了一个宏,我想遍历每个单元格并删除尾随空格并将 <> 替换为 () 以指示负数并只删除正数的尾随空格。
Sub Macro1()
Dim i As Integer, d As Integer
i = 13
Do Until .Cells(4, i).Value = ""
For d = 4 To 100 *I want the loop to stop at the first empty cell.*
Cells(d, i) = Trim(Cells(d, i))
Cells(d, i) *Replace the < at the beginning and end with ()*
Next d
i = i + 1
Loop
End Sub
在开始第一个 do 循环之前,如果每次都相同,您可以找到该列的最后一个单元格:
lRow= Range("A" & Rows.Count).End(xlUp).Row 'Replace A with column you want
这将存储最后一行,您可以将 d = 4 到 100 替换为:
for d = 4 to lRow
我在 excel 中有一列是我从程序导入的,如果这些条代表单元格,它总是以这种格式导入它,| |尾随空格和 <> 表示负数。正数是这样出来的,| 758.92 美元|也有尾随空格。数字格式是货币,我希望能够对这些数字求和,而不必向下移动 100 或 200 个单元格的列并更改所有这些。
我启动了一个宏,我想遍历每个单元格并删除尾随空格并将 <> 替换为 () 以指示负数并只删除正数的尾随空格。
Sub Macro1()
Dim i As Integer, d As Integer
i = 13
Do Until .Cells(4, i).Value = ""
For d = 4 To 100 *I want the loop to stop at the first empty cell.*
Cells(d, i) = Trim(Cells(d, i))
Cells(d, i) *Replace the < at the beginning and end with ()*
Next d
i = i + 1
Loop
End Sub
在开始第一个 do 循环之前,如果每次都相同,您可以找到该列的最后一个单元格:
lRow= Range("A" & Rows.Count).End(xlUp).Row 'Replace A with column you want
这将存储最后一行,您可以将 d = 4 到 100 替换为:
for d = 4 to lRow