我有一列電話號碼(其中一些具有分號(;)或冒號(,列D) )分開兩個電話號碼。
我想拆分兩個電話號碼,並將第二個列放在左邊(比如B列),將第一個留在原始D列單元格中。如果單元格中只有一個電話號碼,則保持獨立。
我知道它可能會使用UBound和Split Array?但是如何?
有人可以幫我嗎?
謝謝。如何使用UBound拆分列中的字符串並將分隔的字符串置於VBA中的另一列
0
A
回答
1
如果你是絕對肯定的是,他們只能在小區兩個電話號碼,這應該做的伎倆,或至少它爲我:
Option Explicit
Sub test()
Dim chkRng As Range
Dim cell As Range
Dim arr As Variant
Set chkRng = Range("D1:D" & (Range("D" & Rows.Count).End(xlUp).Row))
For Each cell In chkRng
If InStr(1, cell.Value, ",") > 0 Then
arr = Split(cell.Value, ",")
ElseIf InStr(1, cell.Value, ";") > 0 Then
arr = Split(cell.Value, ";")
Else
GoTo continue
End If
cell.Offset(, -2).Value = Trim(arr(1))
cell.Value = Trim(arr(0))
continue:
Next cell
End Sub
+0
是的,它的工作原理。謝謝。 – lukayl
0
可能有更簡單的方法來做到這一點,但您可以使用Instr
函數來定位分號(;)或逗號(,),然後將它們分開。例如,下面的工作:
Sub SeparateNumbers()
Dim Rng As Range
Set Rng = ActiveSheet.Range("D1:D" & ActiveSheet.Cells(Rows.Count, 4).End(xlUp).Row)
For Each Cell In Rng
If InStr(1, Cell.Value, ";") Then
Cell.Offset(0, -2).Value = Trim(Mid(Cell.Value, InStr(1, Cell.Value, ";") + 1, (Len(Cell.Value) - (InStr(1, Cell.Value, ";")))))
Cell.Value = Mid(Cell.Value, 1, InStr(1, Cell.Value, ";") - 1)
End If
If InStr(1, Cell.Value, ",") Then
Cell.Offset(0, -2).Value = Trim(Mid(Cell.Value, InStr(1, Cell.Value, ",") + 1, (Len(Cell.Value) - (InStr(1, Cell.Value, ",")))))
Cell.Value = Mid(Cell.Value, 1, InStr(1, Cell.Value, ",") - 1)
End If
Next Cell
End Sub
1
試試這個
Sub rep()
For Each c In Sheets("Sheet1").Range("D1:D65").Cells ' Change the range that you want
If InStr(c.Value, ",") > 0 Then
phonNumb = Split(c, ",")
Range("D" & c.Row) = phonNumb(0)
Range("C" & c.Row) = phonNumb(1)
ElseIf InStr(c.Value, ";") > 0 Then
phonNumb = Split(c, ";")
Range("D" & c.Row) = phonNumb(0)
Range("C" & c.Row) = phonNumb(1)
End If
Next c
End Sub
相關問題
- 1. 如何在列表中拆分管道分隔的字符串?
- 2. 將字符串拆分後的序列中的字符串
- 3. R拆分字符串按列中的分隔符
- 4. 如何將字符串列拆分爲4個字符串列?
- 5. 使用字符串作爲分隔符來拆分字符串
- 6. 在Python中,如何拆分字符串並保留分隔符?
- 7. C#:字符串拆分返回字符串列表和分隔符列表?
- 8. 將字符串拆分爲基於分隔符的字符串數組
- 9. 如何將字符串拆分爲列
- 10. 基於列的字符串拆分(Java)
- 11. 將字符串中的字符分隔成一個列表(python)
- 12. 如何拆分用多個字符分隔的字符串?
- 13. 將字符串列表拆分爲字符串列表列表
- 14. 在Go中的字符串列表中拆分字符串
- 15. 如何在基於java的字符串「」拆分爲分隔符
- 16. VBA字符串分隔符
- 17. 由兩個分隔符將字符串拆分爲兩列
- 18. 拆分OCaml中的字符串列表
- 19. 使用分隔符c將字符串拆分爲一個點#
- 20. 將由「\ r \ n」分隔的字符串拆分爲行列表?
- 21. 將逗號分隔的字符串拆分爲列
- 22. 基於分隔字符的拆分字符串
- 23. 將字符串拆分爲awk中的反斜槓(「\」)分隔符?
- 24. 拆分逗號分隔的字符串並將其添加到列表中
- 25. 如何將字符串拆分爲java中的子字符串
- 26. 如何將字符串拆分爲iOS中的子字符串?
- 27. MySQL如何從列中拆分字符串「」,並將結果分隔,插入另一列?
- 28. 如何拆分由|分隔的字符串字符
- 29. 列表中分隔的字符串
- 30. 拆分逗號分隔的字符串
爲什麼不使用單元格公式? 'find','left','right'和'if' – Dan