在VBA中拆分数据

目前我面临一个问题,特别是我不知道如何解决这个问题。 我有一张桌子:
————————–
| d.dasd |
| dasda.dasda |
| fdsfs.fsdf |
| fdsfdsaf.fdsafasdf |
| dasda.dasdasdas |
—————————

事情是,我想删除“点”后的string。 我在VBA中写了一个脚本:

Sub SplitText() Dim Counter As Integer Counter = 1 Dim LastRow As Long LastRow = Cells(Rows.Count, "A").End(xlUp).Row Dim Temp As String Dim Splited As String Do While Counter <= LastRow Temp = Cells(Counter, 1).Value Splited = Split(Temp, ".") MsgBox Splited Counter = Counter + 1 Loop End Sub 

但是我在'Splited = Split(Temp,“)中遇到了问题。
点之后的数据应该被删除。

我该怎么办?

根据评论,如果你想要的是前面的文字. 那么只能改变一行:

 Sub SplitText() Dim Counter As Integer Counter = 1 Dim LastRow As Long LastRow = Cells(Rows.Count, "A").End(xlUp).Row Dim Temp As String Dim Splited As String Do While Counter <= LastRow Temp = Cells(Counter, 1).Value Splited = Split(Temp, ".")(0) MsgBox Splited Counter = Counter + 1 Loop End Sub 

在这里输入图像说明

试试这个代码:

 Sub SplitText() Dim Counter As Integer Counter = 1 Dim i As Integer Dim LastRow As Long LastRow = Cells(Rows.Count, "A").End(xlUp).Row Dim Temp As String Dim Splited As Variant '~~> Splited will be Variant and NOT string Do While Counter <= LastRow Temp = Cells(Counter, 1).Value Splited = Split(Temp, ".") '~~> Run a loop on array and get all the items For i = LBound(Splited) To UBound(Splited) MsgBox Splited(i) Next Counter = Counter + 1 Loop End Sub