分享

如何把'1 2 3'拆到3个单元格?

 L罗乐 2018-03-12


促销广告,你的Excel水平想达到我这水平吗?,你想快速提高自己的Excel水平,如果想,去购买我录制的视频

3月10至3月12日,购买Excel视频525集和290集两套只需150元,加我微信18664243619,微信红包支付,然后加我QQ732243800,发你视频

525集内容详情 525集Excel视频

290集内容详情290集函数案例Excel视频

大家好,今天和大家分享“如何把''1 2 3''拆分到3个单元格里?'',下面我讲3种方法实现

一、方法1,分列

1、动画操作


二、方法2,函数

1、公式截图

2、公式

=TRIM(MID(SUBSTITUTE($A1,'' '',REPT('' '',99)),COLUMN(A1)*99-98,99))

3、公式解释

  • REPT('' '',99)产生99个空格

  • SUBSTITUTE($A1,'' '',REPT('' '',99))把空格替换成99个空格,让每一个数字之间拉大距离

  • MID(SUBSTITUTE($A1,'' '',REPT('' '',99)),COLUMN(A1)*99-98,99)把每一个数字提取出来,然后用trim去掉前后多余的空格


三、方法3,vba代码实现

1、动画演示

2、代码

Option Explicit

Sub 拆分()

    Dim z, arr1, arr2, arr3(1 To 10000, 1 To 10), x, y

    z = Cells(Rows.Count, 1).End(xlUp).Row ''获取A列最后一个非空单元格的行号

    arr1 = Range(''A1:A'' & z) ''把区域写于数组arr1

    For x = 1 To UBound(arr1) ''循环数组arr1的行

        arr2 = Split(arr1(x, 1), '' '') ''按空格拆分后写于arr2

        For y = 0 To UBound(arr2) ''循环数组arr2

            arr3(x, y 1) = arr2(y) ''把拆分后数据写于arr3

        Next y

    Next x

    [B1].Resize(10000, 10).Clear

    [B1].Resize(z, 10) = arr3 ''把数组arr3读到单元格区域

End Sub

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多