求助vba代码,按要求分列数据
vba吧
全部回复
仅看楼主
level 1
求助各位大神帮忙看看vba可以实现这个分列吗?如图所示A列是要分列数据,C2:F16是分列好想要的数据。要求是把A列数据分列时单元格里包含有"AG"这样两个相连的字符就忽略掉,只分列不含"AG"字样的数据。
2024年08月18日 05点08分 1
level 7
第一步是把A列拆分到B列及以后的单元格,使用下面的一行即可实现:
Columns("A:A").TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar:="."
第二步是删除B列之后内容中AG开头的单元格,删除后右边的空白单元格向左移,可以使用下面的代码完成:
Dim arr, newArr, i&, j&, k&
arr = ActiveSheet.UsedRange
ReDim newArr(1 To UBound(arr), 1 To UBound(arr, 2))
For i = 1 To UBound(arr)
k = 0
For j = 1 To UBound(arr, 2)
If j = 1 Or Left(arr(i, j), 2) <> "AG" Then
k = k + 1
newArr(i, k) = arr(i, j)
End If
Next j
Next i
ActiveSheet.UsedRange = newArr
2024年08月19日 00点08分 2
感谢大神提供的代码[大拇指][大拇指][大拇指]
2024年08月19日 01点08分
1