2014-03-05 64 views
1

我有一串文本,我需要用分隔符替换每个第3个空格或第9个字符“;”或 “:”谷歌电子表格/ Excel:替换每n个空格

实施例1 -

94 B7 13 94 A9 13 91 9F 13 94 92 11

结果

94 B7 13 94 A9 13; 91 9F 13; 94 92 11

实施例2-

94 B7 13 94 A9 13 91 9F 13 94 92 11 9D 55 12

结果

94 B7 13 94 A9 13; 91 9F 13; 94 92 11; 9D 55 12

我怎样才能做到这一点谷歌电子表格或Excel(首选谷歌电子表格)

+0

你对字符串的长度有限制吗? – Jerry

回答

0

在excel中可以使用替换函数,最后一个参数是告诉你要替换的空间。

要替换只有3度空间

=SUBSTITUTE(A1;" ";";";3) 

根据您可能需要更换域分隔区域设置“”通过“,”

+0

谢谢,这可以在Google Spreadsheets中实现。 – user3382779

+0

我觉得你很幸运,它在Google中的工作方式是相同的...... :) – CRondao

0

最简单的方法是使用Excel中的一个宏,循环遍历每个单元格。如果您选择包含要修改的单元格的区域并运​​行以下宏,则应将每个单元格中的每个第3个空格替换为;

Sub InsertDelimiter() 
    Dim cell As Range 
    Dim i As Integer 
    Dim SpaceCount As Integer 

    For Each cell In Selection 
     SpaceCount = 0 
     For i = 1 To Len(cell.Value) 
      If Mid(cell.Value, i, 1) = " " Then 
       SpaceCount = SpaceCount + 1 
       If SpaceCount = 3 Then 
        cell.Value = Mid(cell.Value, 1, i - 1) & ";" & Mid(cell.Value, i + 1, Len(cell.Value) - i) 
        SpaceCount = 0 
       End If 
      End If 
     Next i 
    Next cell 
End Sub 
+0

您必须将此代码复制到VBA中的新模块。以下是VBA入门指南:http://msdn.microsoft.com/en-us/library/ee814737(v=office.14).aspx –

+0

谢谢,这可以在Google Spreadsheet中完成。 – user3382779

+0

我不熟悉Google Spreadsheet中的宏。在这种情况下,您将不得不使用名为“Google Apps脚本”的编码语言,但我没有使用该语言的经验。 –

相关问题