excel宏来更改列

时间:2016-05-23 10:48:45

标签: excel vba excel-vba

我每个月都会有一个文件,其中包含的行数少于50K。我通常需要用不同的值替换B列中的值,例如,如果B列中的任何字段包含ASD,则将其替换为XYZ。并且有一个需要替换的值列表。同样如上所述,旧值可能在B列中不止一次,需要更换。

任何帮助都会很棒。

谢谢

2 个答案:

答案 0 :(得分:2)

录制宏[查看>宏>录制宏]

执行find + replace操作

停止录制。

现在查看宏>编辑。

您将看到新录制的宏进行查找+替换,您可以根据您的具体要求进行编辑。

答案 1 :(得分:0)

试试:

Sub test()
'this will get you the last row number in column "B"
lastRow = Sheets("SheetName").Cells(Sheets("SheetName").Rows.Count,"B").End(xlUp).Row

'loop through all cells in coulmn "B" and replace text as needed
For i = 1 To lastRow
    'you can add multiple lines for each values that needs to be replaced
    Sheets("SheetName").Cells(i, 2).Value = Replace(Sheets("SheetName").Cells(i, 2).Value, "ABC", "XYX")
Next i

End Sub

其中'SheetName'是您工作表的名称。希望这就是你要找的东西!