macros使用标记拆分单元格中的文本

我有一个单元格的值

XX 99999 - X99, XX 99999 - X99, XX 99999 - X99 

X – 表示字母9 – 表示数字

我必须读这个单元格

  • 用“,”分割得到XX 99999 - X99数组
  • 吐出使用“”和“ – ”之后得到xx99999X99

这可以做到不使用 “文本到列”,即在Excel中使用一些function? 因为我需要使用分隔的内容来过滤一些其他的数据。

看看MSDN上的拆分function。 以下分为两部分。

  1. 下面的代码首先分割string,并将每个逗号分隔值赋给strSplit。
  2. 然后再用“”分割子string,并将每个片段分配给pieceSplit(),然后输出到直接窗口。

最后一部分,你可以改变和适用于你的项目。

 Dim str As String, piece As Variant Dim strSplit() As String, pieceSplit() As Variant Dim i As Double, j As Double str = "XX 99999 - X99, XX 99999 - X99, XX 99999 - X99" strSplit = Split(str, ",") ReDim pieceSplit(UBound(strSplit)) As Variant For i = 0 To UBound(strSplit) pieceSplit(i) = Split(strSplit(i), " ") Next For Each piece In pieceSplit For j = 0 To UBound(piece, 1) Debug.Print piece(j) Next j Next