欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

excel拆分单元格数据的几种方法(excel的拆分单元格怎么拆)

数码知识

林桦思优秀作者

原创内容 来源:小居数码网 时间:2024-08-12 17:37:01 阅读() 收藏:55 分享:76

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有1163个文字,大小约为5KB,预计阅读时间3分钟。

No.1Excel拆分单元格内数据是一个高级技能,一般情况下,很少这么操作。

excel的拆分单元格怎么拆

No.1

当然,会这个操作的人也很多。

首先,我们理解一下什么是"拆分单元格数据",本节讲的"拆分单元格"不是把一个列拆分为几个列,而是以某种格式的分隔符为标志,把单元格内的数据分别拆开,然后添加到不同的单元格中。

这个操作同样用到一个方法,很明显,vba操作数据表格的时候,首要有个对象,然后就是对这个对象进行什么样的方法处理。

拆分单元格数据,用到Range对象,对象的方法是TextToColumns,意思就是将文本转换为列。

方法参数如下图所示:

No.2

这个方法参数比较多,但是应用的时候,不会全部写出来,毕竟使用到的仅仅是某些。

语法:

Range.TextToColumns(Destination、 DataType、 TextQualifier、 ConsecutiveDelimiter、 Tab、Semicolon、Comma、Space、 Other、 OtherChar、 FieldInfo DecimalSeparator、 ThousandsSeparator、 TrailingMinusNumbers)

方法它执行之后,会将拆分的数据,默认依次放到被拆分单元格之后。

如上图所示,粉色部分为被拆分数据,拆分之后的数据就保存到之后浅灰色单元格内。

这功能在应用中,常常用到将一些混合的数据进行分列处理。

比如,有一列数据,里面有姓名、年龄、身份证号、地址,四个关键字内容。

要分别把这四个内容放到不同列里面,就用这个方法来实现。

其中,这四个关键字之间要有一个分隔符,一般有空格,逗号,Tab制表符,分号等字符。

当然,如果不喜欢这些字符,也可以自定义分隔符。

使用Other=True,和OtherChar来定义分隔符。

注意:

如果Other指定为True,那么OtherChar参数就为必填项目,同时使用。

参数:Destination定义了被拆分后的数据存放地址。

No.3

下实例操作演示:

Private Sub TextToColumnsChange()Application.DisplayAlerts = FalseDim xValue As StringxValue = InputBox("数据输入", "请输入数据:", "This is a TextToColumn List.")If VBA.Len(VBA.Trim(xValue)) = 0 Then Exit SubDim cell As RangeSet cell = ActiveSheet.Range("B2:B10")With [A1].Offset(2, 0).Resize(cell.Rows.Count, UsedRange.Cells.Columns.Count + 1)    .Clear '清除原数据内容End WithWith cell.Item(1).Offset(0, 1) '清除原拆分内容    .Select    .UnMerge    Selection.ClearEnd WithWith cell.Item(1) '添加表头    .Value = "数据内容"    .HorizontalAlignment = xlCenter    .Interior.Color = RGB(221, 92, 255)    .Borders.LineStyle = 1    .Columns.AutoFitEnd WithWith cell.Offset(1, 0) '添加原数据内容    .ClearContents    .Value = xValue    .HorizontalAlignment = xlCenter    .Interior.Color = RGB(221, 92, 255)    .Borders.LineStyle = 1    .Columns.AutoFit    With .Offset(0, 1)         .Value = .Offset(0, -1).Value         .TextToColumns Space:=True '拆分数据内容 并向后填充    End WithEnd With'设置拆分内容格式With cell.Offset(0, 1).Resize(cell.Rows.Count + 1, cell.Cells(2, 1).End(xlToRight).Column - cell.Cells(2, 1).Column) 'Me.Cells(3, Me.Cells.Columns.Count).End(xlToLeft).Column - 2)    .Columns.AutoFit    .RowHeight = 28    .HorizontalAlignment = xlCenter    .Interior.Color = RGB(221, 223, 255)    .Borders.LineStyle = 1End With'合并表头cell.Cells(1, 2).Resize(1, cell.Cells(2, 1).End(xlToRight).Column - cell.Cells(2, 1).Column).MergeWith cell.Item(1).Offset(0, 1)    .Value = "拆分后内容"End WithApplication.DisplayAlerts = TrueEnd Sub

本例有一些比较复杂的地方,代码较多,看上去不太友好。

其功能是,在一个输入框内输入一串以空格为间隔的字符串,然后将这个字符串拆分后放置到多列单元内。

其中,只简单使用了TextToColumns Space:=True来实现拆分。

本行代码意思是以空格作为拆分字符。

其它字符:

TextToColumns Tab:=True'制表符Tab

TextToColumns Semicolon:=True'分号

TextToColumns Comma:=True'逗号

本例就讲这些,对于如何针对表格单格进行拆分,以后再做一个表格来进行演示。

欢迎关注、收藏。

---END---

上面就是小居数码小编今天给大家介绍的关于(excel的拆分单元格怎么拆)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

94%的朋友还想知道的:

(524)个朋友认为回复得到帮助。

部分文章信息来源于以及网友投稿,转载请说明出处。

本文标题:excel拆分单元格数据的几种方法(excel的拆分单元格怎么拆):http://sjzlt.cn/shuma/155018.html

猜你喜欢