替换Excel VBA中的特殊字符并添加列

时间:2017-07-03 12:56:57

标签: excel vba

我真的很擅长使用Excel VBA宏,因为我的工作要求具有挑战性。为了给大家简要介绍,我每天收到一个文件,我必须找到所有特殊字符( @ *()_ + [] \:;“',。/?)从A列添加三列C,D和E应该自动填充值即 - 列C应填写“XYZ”,列D填写“ABC”,列E填写“NA”。应该在添加到最后一个数据行的新列中复制相同的值。

我确实创建了一些东西,除了双引号(“)之外用于删除特殊字符。另外,我没有找到将文件保存为EXE的方法,单击时发现Excel工作簿打开了命名并执行此功能。

如果有人可以帮我解决这个问题,我真的很感激。我对VBA编程很天真。如果这样做,对我的日常工作管理将是一个很大的帮助!

感谢帮助。

谢谢, 阿克沙伊

 Sub Remove_Special()
Columns("A").Replace _
 What:=";", Replacement:=""
Columns("A").Replace _
 What:=":", Replacement:=""
Columns("A").Replace _
 What:=",", Replacement:=""
Columns("A").Replace _
 What:="(", Replacement:=""
Columns("A").Replace _
 What:=")", Replacement:=""
Columns("A").Replace _
 What:="{", Replacement:=""
Columns("A").Replace _
 What:="}", Replacement:=""
Columns("A").Replace _
 What:="[", Replacement:=""
Columns("A").Replace _
 What:="]", Replacement:=""
Columns("A").Replace _
 What:="~+", Replacement:=""
Columns("A").Replace _
 What:="~*", Replacement:=""
Columns("A").Replace _
 What:="~?", Replacement:=""
Columns("A").Replace _
 What:="_", Replacement:=""
Columns("A").Replace _
 What:=".", Replacement:=""
Columns("A").Replace _
 What:="'", Replacement:=""
Columns("A").Replace _
 What:="\", Replacement:=""
Columns("A").Replace _
 What:="/", Replacement:=""
Columns("A").Replace _
 What:=".", Replacement:=""
Columns("A").Replace _
 What:="@", Replacement:=""
Columns("A").Replace _
 What:=Chr(34), Replacement:=""

MsgBox "All special characters have been removed", vbOKOnly
End Sub

1 个答案:

答案 0 :(得分:0)

看看类似的东西: VBA - If a cell in column A is not blank the column B equals

还可以尝试删除双引号:

myVariable = Replace(myVariable, Chr(34), "")

您可以将工作簿的内容复制并粘贴到启用宏的工作簿,而不是创建可执行文件。