excel文件内有三列A列B列C列,A列为panel ID,B列为测量数据,测量数据包含冒号和逗号,需要通过应用两次分列将数据分开,分列后数据将所有单元格空格去掉,并将数据存放在另一个sheet中的VBA代码
时间: 2024-03-11 10:48:35 浏览: 107
VBA 按照某一列进行筛选拆分数据,拆分成多个表或多个Sheet,按某列检查重复生成新的Sheet,删除除本表外的所有表
5星 · 资源好评率100%
以下是将数据分列并去除空格的VBA代码:
```
Sub splitData()
Dim lastRow As Long
Dim dataRange As Range
Dim cell As Range
Dim splitData() As String
Dim newData() As String
Dim i As Long
Dim j As Long
'获取数据范围
lastRow = Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row
Set dataRange = Sheets("Sheet1").Range("A2:C" & lastRow)
'遍历每个单元格
For Each cell In dataRange
'分割数据
splitData = Split(cell.Value, ",")
'去除空格并存储到新数组中
ReDim newData(UBound(splitData))
For i = 0 To UBound(splitData)
newData(i) = Trim(splitData(i))
Next i
'将新数据写入Sheet2
For j = 0 To UBound(newData)
Sheets("Sheet2").Cells(cell.Row, cell.Column + j).Value = newData(j)
Next j
Next cell
End Sub
```
该代码将数据范围设定为Sheet1中A2:C列,遍历每个单元格,通过Split函数分割数据,并通过Trim函数去除空格,然后将新的数据写入到Sheet2中对应的单元格。
需要注意的是,该代码假设Sheet2中的单元格已经按照分列后的数据进行了相应的调整,即单元格数量与分列后的数据数量相同,否则会出现数据错位的情况。
阅读全文