如何在vba中实现将单列数据分列为多列数据的功能? 您所在的位置:网站首页 会计分隔符是什么样的表格中 如何在vba中实现将单列数据分列为多列数据的功能?

如何在vba中实现将单列数据分列为多列数据的功能?

2024-03-22 10:52| 来源: 网络整理| 查看: 265

如何在vba中实现将单列数据分列为多列数据的功能? 2018年5月7日 作者:水星Excel 10,650 次浏览 暂无评论

在excel的“数据”选项卡下的“数据工具”组中有“分列”功能,可以实现将单列数据按照固定宽度或者指定的分隔符进行分列。

在vba中可以使用range对象的TextToColumns方法实现以上功能。

它的语法如下:

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

其中参数Destination为分列后的数据所存放的单元格区域的起始位置;

DataType参数指定是按照分隔符分列还是按照固定宽度分列;

TextQualifier参数指定是以双引号还是单引号作为识别文本的限定符,或者是不需要用限定符识别文本;

ConsecutiveDelimiter参数表示是否将连续的分隔符看作一个分隔符还是多个分隔符;

Tab , Semicolon , Comma , Space 参数分别表示分隔符是Tab、分号、逗号还是空格;

Other参数表示分隔符是其它字符;

OtherChar参数指定其它分隔符是什么字符‘;

FieldInfo参数表示分列后的各个列的具体格式,一般情况下excel会自动转换;

DecimalSeparator , ThousandsSeparator参数分别表示以怎样的分隔符来识别实数和千分位符号。

比如如下的代码可以将A列按照逗号分隔符分列:

Sub QQ1722187970() Dim oWK As Worksheet Set oWK = Excel.ActiveSheet With oWK .Range("a1").EntireColumn.TextToColumns Destination:=.Range("a1"), DataType:=xlDelimited, comma:=True, fieldinfo:=Array(Array(1, 1)) .Columns.AutoFit End With End Sub

我们有时候需要用分列来转换单列的格式,比如单列的格式是文本格式,需要用分列转换为数值格式,这时候可以直接使用如下的代码:

Sub QQ1722187970() Dim oWK As Worksheet Set oWK = Excel.ActiveSheet With oWK .Range("a1").EntireColumn.TextToColumns .Columns.AutoFit End With End Sub 其它相关文章推荐:如何用vba删除excel单元格区域中的重复值?如何在excel工作表中插入圆形?如何用vba复制粘贴文件?如何在excel工作表中插入半圆?如何用vba批量保护或取消保护excel工作表?如何用vba将ppt另存导出为视频文件? 分类 :  VBA , VBA 基础知识 标签 :  TextToColumns , 分列 , 分隔符 , 固定宽度 , 格式        

声明: 本站文章均属原创,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则视为侵权。如果想要每天都收到本站的技术文章推送,可以微信搜索公众号:水星Excel或者Excel_Office关注。其它事宜请加QQ:1722187970 或微信号:xycgenius 联系。 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有