Sub test1()
    Dim h
    Dim j As Integer
    j = 0
    Dim n1 As Integer '分行单元格在第几列
    Dim m1 As Integer '填充到的列
    Dim p As Integer '所有内容的列数
    n1 = 1
    m1 = 2
    p = 4
    'Application.ScreenUpdating = False
    'For i = 1 To Range("a65536").End(xlUp).Row
    For i = 2 To 16  '如果不能完全填充,加大这里的行数
        'MsgBox i
        i = i + j
        h = Split(Cells(i, n1), ",") '如果需要根据多个标点符号分行,可以复制出一列,然后选择分行后粘贴到分行前的那一列进行覆盖,其余列正常填充空格,在每次分行时根据需求修改分行条件(这里按逗号分行,标点符号区分中英文)
        'MsgBox i
        'MsgBox UBound(h)
        If UBound(h) > 0 Then
          Rows(i + 1).Resize(UBound(h)).Insert
          Cells(i, m1).Resize(UBound(h) + 1, 1) = Application.Transpose(h)
          j = UBound(h)
          'MsgBox UBound(h)
          For num = 1 To j
             For column = 1 To p '此循环为了控制粘贴值的列数,有多少列值需要复制就to 多少,哪里是填充拆分值的列,就在内层if处理,不进行向下填充
             If column = m1 Then  '如果填充的是拆分填充的列,只要复制等于原单元格值即可,因为上一步拆分已做填充
               Cells(i, column) = Cells(i, column)
             Else '如果不是,则空单元格等于上一列值,num为之前每列添加空格的个数,通过num的for循环可以一一进行填充
               Cells(i + num, column) = Cells(i, column)
             End If
             Next
          Next
        Else
           Cells(i, m1) = Application.Transpose(h)
           j = 0
        End If
        
           
        'If i < 2 Then
           'j = UBound(h)
           'MsgBox "right"
        'Else
           'j = UBound(h)
        'End If
    Next
    'Application.ScreenUpdating = True
    
   
End Sub

excel VBA根据一列的逗号隔开值分行的更多相关文章

  1. EXCEL根据某一列单元格特定标点符号分行,其它列内容一致

    注意事项:此方法注意运用excel空值单元格填充,因此数据处理之前,如果存在值为空的,请特殊处理,后期处理完再替换为原来的空值 1.在决定分行数的列后插入一列 2.根据逗号之前值最多的数量来决定分行数 ...

  2. Excel VBA 找出选定范围不重复值和重复值

    Sub 找出选定范围内不重复的值() On Error Resume Next Dim d As Object Set d = CreateObject("scripting.diction ...

  3. 如何快速将数据用逗号隔开——巧用EXCEL

    问题是这样的,下图是爬虫获得的数据,注意该数据存储在CSV格式的EXCEL表格中,单元格中的数据每四个代表一个点的经纬度,但是很明显它现在的这个形式是没法利用的, 因此需要对数据进行挖掘,提取出经纬度 ...

  4. Excel VBA入门(五)Excel对象操作

    本章是本系列教程的重点.但我觉得应该不是难点.从第零章开始到学完本章,应该可以把VBA用于实战中了. Excel对象主要有4个: 工作薄 Workbook 工作表 Worksheet 单元格区域 Ra ...

  5. Excel VBA 入门

    一.文件格式 要使用VBA,excel文件必须保存为启用宏的工作簿,即xlsm格式. 二.启动VBA编辑器 打开工作簿后,要启动VBA编辑器,有两种方法,一是在工作表的名字上面点击右键,选择“查看代码 ...

  6. Excel VBA入门(三) 流程控制1-条件选择

    VBA中的流程控制分为两种,其一是条件结构式的,即根据条件判断的结果去选择性执行相应的语句(块):另一种是循环,即循环地执行语句(块).本节介绍第一种. 1. IF if 语句其实包含有几种形式: ① ...

  7. 用逗号隔开简单数据保存为csv

    用记事本编辑简单数据,用英文逗号隔开,编辑为多列,保存为.csv文件.可以用Excel打开编辑.

  8. 来吧!带你玩转 Excel VBA

    来吧!带你玩转 Excel VBA 从错失良机到艰辛的DOS征程,从坎坷购机自学路到转机起程,从爱好到事业,他从一个完全不懂电脑的人到VBA高级应用者,一切全是自学…… 我是罗刚君,来自四川的一个小县 ...

  9. Excel 2003 中如何用VBA 代码访问单元格里的值及操作单元格 - 唐诗宋词的专栏 - 博客频道 - CSDN.NET

    在Excel 中编写VBA 代码,最常做的事可能就是操作表单中单元格里的数据. 我这里总结一下如何从VBA 代码中操作单元格的数据. 在VBA 代码中操作单元格需要用到Range 对象,Range 是 ...

随机推荐

  1. [bug] Flask:jinja2.exceptions.UndefinedError: 'None' has no attribute 'id'

    问题 Python Flask做的购物网站,添加购物车时,提示错误 解决 检查发现是MySQL中不正常的空数据导致,删除此条记录即可 参考 https://www.jb51.cc/python/186 ...

  2. 将top命令的输出,写入到文件中 top -b -n 1 -d 3 >>file.txt

    top -b -n 1 -d 3 >>file.txt 解析: -b :batch模式,可以重定向到文件中 -n 1:一共取1次top数据.后边加数字,表示次数 -d 3:每次top时间间 ...

  3. tuple必须加上逗号

    tuple支持  空 元组 不加逗号 >>> tup4 = () tuple非空的元组必须加上逗号>>> tup4 = (55,)>>> tup4 ...

  4. 《SystemVerilog验证-测试平台编写指南》学习 - 第1章 验证导论

    <SystemVerilog验证-测试平台编写指南>学习 - 第1章 验证导论 测试平台(testbench)的功能 方法学基础 1. 受约束的随机激励 2. 功能覆盖率 3. 分层的测试 ...

  5. 004.Python运算符

    一 算数运算符 1.1 加法 [root@node10 python]# cat test.py var1 = 10 var2 = 7 res = var1 + var2 print(res) [ro ...

  6. mysql数据库-运维合集

    目录 RDBMS 术语 整删改查操作 库操作 表操作 账号与授权 匹配符(条件查询) MySQL三大类数据类型 函数 其他操作 查看数据库的占用空间大小 开启慢查询 状态查询 字符集设置 忘记密码重置 ...

  7. 如何使用 IoC

    创建Maven工程,pom.xml添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project x ...

  8. MySQL next-key lock 加锁范围是什么?

    前言 某天,突然被问到 MySQL 的 next-key lock,我瞬间的反应就是: 这都是啥啥啥??? 这一个截图我啥也看不出来呀? 仔细一看,好像似曾相识,这不是<MySQL 45 讲&g ...

  9. Step By Step(Lua弱引用table)

    Step By Step(Lua弱引用table) Lua采用了基于垃圾收集的内存管理机制,因此对于程序员来说,在很多时候内存问题都将不再困扰他们.然而任何垃圾收集器都不是万能的,在有些特殊情况下,垃 ...

  10. Jmeter- 笔记6 - 负载测试

    普通场景介绍 1.线程数:并发用户数 2.Ramp-Up时间:启动时间(线程数的准备时间),在这个时间点结束时,所有用户都已运行起来 3.循环次数:每个线程数都要运行的次数.永远 和 调度器一起使用, ...