在Excel中拆分單元格中的數(shù)據(jù)是一項(xiàng)高級技能。一般很少做,。
當(dāng)然,,有很多人可以做到這一點(diǎn)。
首先,我們來了解一下什么是‘拆分單元格數(shù)據(jù)’,。本節(jié)所說的‘拆分單元格’并不是將一列拆分成幾列,,而是以某種格式的分隔符作為符號,然后將一個(gè)單元格中的數(shù)據(jù)分開,,添加到不同的單元格中,。
此操作還使用了一個(gè)方法。很明顯,,vba在操作數(shù)據(jù)表的時(shí)候,,首先是有一個(gè)對象,然后是用什么樣的方法來處理這個(gè)對象,。
要拆分單元格數(shù)據(jù),,使用Range對象,該對象的方法是TextToColumns,,這意味著將文本轉(zhuǎn)換為列,。
參數(shù)如下圖所示:
這個(gè)方法有很多參數(shù),但是應(yīng)用的時(shí)候不會全部寫出來,。畢竟只是用了一些,。
語法:
范圍。TextToColumns(目的地,、數(shù)據(jù)類型,、文本限定符,、連續(xù)分隔符,、制表符、分號,、逗號,、空格、其他,、其他字符,、字段信息十進(jìn)制分隔符、千位分隔符,、TrailingMinusNumbers)
執(zhí)行該方法后,,默認(rèn)情況下,拆分的數(shù)據(jù)將放置在拆分的單元格之后,。
如上圖所示,,粉色部分是拆分后的數(shù)據(jù),拆分后的數(shù)據(jù)保存在后面的淺灰色單元格中,。
在應(yīng)用中,,這個(gè)函數(shù)經(jīng)常用來對一些混合數(shù)據(jù)進(jìn)行排序。
例如,有一列數(shù)據(jù),,包含姓名,、年齡、身份證號,、地址和四個(gè)關(guān)鍵字,。
為了將這四個(gè)內(nèi)容放在不同的列中,使用了這個(gè)方法,。
其中,,這四個(gè)關(guān)鍵字之間應(yīng)該有分隔符,一般包括空格,、逗號,、制表符、分號等字符,。
當(dāng)然,,如果你不喜歡這些字符,你也可以自定義分隔符,。
使用Other=True和OtherChar來定義分隔符,。
注意:
如果將Other指定為True,則需要OtherChar參數(shù)并同時(shí)使用,。
參數(shù):Destination定義拆分?jǐn)?shù)據(jù)的存儲地址,。
下面舉例操作演示:
PrivateTextToColumnChange()application . display alerts=false dim xvalue as string x value=InputBox(' data input ''請輸入數(shù)據(jù):''這是一個(gè)TextToColumn列表。')如果VBA,。萊恩(VBA,。Trim(xValue))=0,然后以RangeSet cell=ActiveSheet的形式退出SubDim單元,。使用[A1]的范圍(' B2:B10 '),。偏移量(2,0),。resize (cell.rows.count,,used range.cells.columns.count1)。' clear '清除以cell.item (1)結(jié)尾的原始數(shù)據(jù)內(nèi)容,。offset (0,,1)'清除原始拆分內(nèi)容。select . unmerge selection . clear end with with cell . item(1)Add header,。值=“數(shù)據(jù)內(nèi)容”,。horizontal alignment=XL center . interior . color=RGB(221,92,,255). borders . line style=1 . columns . autofit end with cell,。Offset(1,,0)'添加原始數(shù)據(jù)內(nèi)容。clear contents . value=x value . horizontal alignment=XL center . interior . color=RGB(221,,92,,255). borders . line style=1 . columns . autofit With。偏移量(0,,1),。值=。' Offset(0,,-1). value . textto columns :=true '拆分?jǐn)?shù)據(jù)內(nèi)容并使用cell.offset (0,,1)拆分內(nèi)容的格式填充后端。resize (cell.rows.count1,,cell.cells (2,,1))。End(xlToRight),。列單元格,。單元格(2,1),。專欄)‘我,。細(xì)胞(3,我,。Cells.Columns.Count),。End(xlToLeft)。Column - 2),。RowHeight=28,。horizontal alignment=XL center . interior . color=RGB(221,223,,25),。borders.linestyle=1以' merge header cell.cells (1,,2)結(jié)尾,。resize (1,cell.cells (2,,1),。end (xltoright)。column-cell.cells (2,,1),。列)。mergewithcell.item (1),。偏移量(0,,1),。value='拆分內(nèi)容'以應(yīng)用程序結(jié)束。displayalerts=trueendsub
這個(gè)例子有些復(fù)雜的地方,,代碼很多,,看起來不友好。
它的作用是在一個(gè)輸入框中輸入一串由空格分隔的字符串,,然后將字符串拆分,,放入一個(gè)多欄單元格中。
其中只有TextToColumns Space:=True是簡單地用來實(shí)現(xiàn)拆分的,。
這行代碼意味著空格被用作拆分字符,。
其他字符:
“TextcolumnTab:=true”選項(xiàng)卡選項(xiàng)卡
' Textcolumns semicolon3360=true '分號
TextToColumns Comma:=True '逗號
這個(gè)例子就是這樣。關(guān)于如何拆分表格單元格,,稍后制作表格進(jìn)行演示,。
官方微信
TOP