代码代码展示如下:代码讲解:1、新建一个新的插页,并重命名为【拆分】插页,用于存放拆分的数据,并将表头A1/B1单元格填入内容;2、参数b主要是用来统计拆分插页目前数据一共有多少行,方便数据写入;3、第一个for循环,循环插页Sheet1中班期列每个单元格;4、参数a上面说过,为每个单元格内日期的个数;5、再次利用一个for循环,依次取出日期,并将之写入到【拆分】插页中去;这里的 Mid(Sheets(“Sheet1”).Cells(i, 2), (j – 1) * 9 + 1, 8)为取数函数,第一个参数:要取字符串的单元格,第二个参数:要取字符串开始的位置,第三个参数:要取字符串的长度;6、通过两次循环,完成数据拆分。
便于大家复制,详细代码如下:Sub 拆分单元格()Dim a%, b%, i%, j%Sheets.Add After:=ActiveSheetActiveSheet.Name = "拆分"Sheets("拆分").Cells(1, 1) = "员工ID"Sheets("拆分").Cells(1, 2) = "班期"b = Sheets("拆分").Cells(Rows.Count, 1).End(xlUp).RowFor i = 2 To Sheets("Sheet1").Cells(Rows.Count, 2).End(xlUp).Rowa = Int(Len(Sheets("Sheet1").Cells(i, 2)) / 9) + 1For j = 1 To ab = b + 1Sheets("拆分").Cells(b, 1) = Sheets("Sheet1").Cells(i, 1)Sheets("拆分").Cells(b, 2) = Mid(Sheets("Sheet1").Cells(i, 2), (j - 1) * 9 + 1, 8)NextNextMsgBox "已完成"End Sub小结对于有规律的、经常需要 *** 作的数据,最好利用VBA技术,一次编写,受益终身,摆脱繁琐的 *** 作,本例中仅通过日期数据为大家做个展示,至于其它类型的数据拆分,只需要理清逻辑,对函数参数、代码做相应的修改即可。
纸上得来终觉浅,绝知此事要躬行,小伙伴们记得动手 *** 作下,有问题,欢迎留言交流!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)