如何删除Excel的每个单元格中的双引号?

时间:2016-11-01 17:10:54

标签: excel-vba vba excel

我发现此代码会删除Excel的每个单元格中的双引号

Sub NoNull()
Dim c As Range
 For Each c In Selection
   If c.Value = " " Then c.ClearContents
 Next c
End Sub

当我粘贴在编辑器中时,我所包含的当前单元格包含一个用双引号括起来的字符串。例如,在Excel中它显示为

text text2 

从编辑器中查看时,它显示为

line 1: "text
line 2: text2"

我想删除双引号,以便在csv中打开时,它会将值视为一种情况 - 而不是多种情况。如何修改上面的代码?

2 个答案:

答案 0 :(得分:2)

根据您的评论,您要删除换行符 所以通过替换功能删除它们。换行可以是chr(10)或vbCrLf或vbCr中的任何一个。下面是一个例子。

For Each c In Selection
   c.Value = Replace(c.Value, Chr(10), " ")
 Next c

答案 1 :(得分:0)

可以说C1是具有错误数据的单元。在新的单元格中,键入= CLEAN(C1)。然后将出现没有双qoutes的C1单元的干净版本。然后,在新清洁的单元格突出显示的同时,双击右下角的小方块,为脏单元格下的所有单元格自动填充相同的公式。然后复制新的干净数据列,并将其粘贴到旧数据列上。