擅长数据分割/分配

我在excel中给出了一个input文件,它只是在列“M2”下方。 把input文件看起来像这样:

ru_utime 0.060 ru_stime 0.140 ru_maxrss 0 ru_ixrss 0 ru_ismrss 0 ru_idrss 0 ru_isrss 0 ru_minflt 4124 ru_majflt 0 ru_nswap 0 ru_inblock 0 ru_oublock 0 ru_msgsnd 0 ru_msgrcv 0 ru_nsignals 0 ru_nvcsw 47174 ru_nivcsw 4347 ================================================== 

然后以相同的格式重复大约1000次以上

正如你可以看到它在同一列有两位信息,那么下一组被分隔===我想要做的是忽略每一位的标题,并把右边的信息移动到下面的不同列彼此。

我想要做的是读下来的文件,并把所有的信息像ru_utime: 0.060下不同的列crossross

所以所有的数据是在“M2”下来,我想要采取相应的标题信息,并将它们移动到像S2,T2,U2为每一个然后当它击中=======做下它的下一个。 如果这对任何人都有帮助,我会非常感激。

目的是通过点击一个button自动完成移动,谢谢

添加:

 Sub incorperate() sn = Split(Join(Application.Transpose(Sheets("sheet2").Cells(1).CurrentRegion.Columns(1)), "|"), String(62, "=") & "|") With Sheets("sheet1").Cells(1).CurrentRegion st = .Rows(1).Offset(.Rows.Count).Resize(UBound(sn) + 1) End With For j = 0 To UBound(sn) sq = Split(sn(j), "|") For jj = 0 To UBound(sq) - 1 st(j + 1, jj + 1) = Split(sq(jj))(UBound(Split(Trim(sq(jj))))) Next Next Sheets("sheet1").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(UBound(st), UBound(st, 2)) = st End Sub 

 Sub move() Dim x, y(), i&, j&, k&, s x = Range("S1", Cells(1, Columns.Count).End(xlToLeft)).Value With CreateObject("Scripting.Dictionary") .CompareMode = 1 For i = 1 To UBound(x, 2) .Item(x(1, i)) = i Next i x = Application.Trim(Range("M2", Cells(Rows.Count, "M").End(xlUp)).Value) ReDim y(1 To UBound(x), 1 To .Count): j = 1 For i = 1 To UBound(x) If InStr(x(i, 1), "==") = 0 Then s = Split(x(i, 1)) If .Exists(s(0)) Then k = .Item(s(0)): y(j, k) = s(UBound(s)) End If Else j = j + 1 End If Next i End With [s2].Resize(j, UBound(y, 2)).Value = y() End Sub