删除没有文本和数字的单元格中的空格

时间:2014-10-02 16:21:12

标签: excel vba excel-vba

我有这个宏的代码,它删除带有文本或数字的单元格中的前导和尾随空格:

Sub LIMPIAR()
Dim i As Integer

For i = 2 To 20628
Cells(i, 7).Value = Trim(Cells(i, 6).Value)

Next

End Sub

但是,有些单元格的内容为" "。所以我想将这种细胞转换为""。我怎么能这样做?

编辑:我正在使用抓取的数据。

2 个答案:

答案 0 :(得分:1)

也许这样处理他们会有所帮助:

 If Len(Cells(i,6).Value) <= 2 Then Cells(i, 7).Value = "" End If

OR

 If Cells(i,6).Value = "  " Then Cells(i, 7).Value = "" End If

答案 1 :(得分:1)

不是一个非常精细的解决方案,但我会使用split函数,然后重新协调结果数组的元素。假设你的字符串在单元格A1中,

mystring = ""
myarray = Split(Cells(1, 1), " ")
For i = LBound(myarray) To UBound(myarray)
  If Trim(myarray(i)) <> "" Then
    mystring = mystring & Trim(myarray(i)) & " "
  End If
Next i
MsgBox Trim(mystring)

mystring应该提供一个字符串,单词之间只有一个空格。您可以将此代码放在循环中。