如何使用Excel VBA拆分和重组单元格

克里斯

我当前使用的代码拆分:

原始数据

并将其更改为:

修改数据

但是,这是我要求数据使用的格式:

所需格式

这是我当前代码的副本:

Sub SplitCells()
Dim rColumn As Range
Dim lFirstRow As Long
Dim lLastRow As Long
Dim lRow As Long
Dim lLFs As Long

Set rColumn = Columns("D")
lFirstRow = 1
lLastRow = rColumn.Cells(Rows.Count).End(xlUp).Row

For lRow = lLastRow To lFirstRow Step -1
    lLFs = Len(rColumn.Cells(lRow)) - Len(Replace(rColumn.Cells(lRow), vbLf, ""))
    If lLFs > 0 Then
        rColumn.Cells(lRow + 1).Resize(lLFs).EntireRow.Insert xlShiftDown
        rColumn.Cells(lRow).Resize(lLFs + 1).Value = Application.Transpose(Split(rColumn.Cells(lRow), vbLf))
    End If
Next lRow
End Sub

任何帮助/评论将不胜感激。

用户名

ResizeToFit在代码末尾调用

在当前代码ResizeToFit之前添加End Sub

即。

...
Next lRow
ResizeToFit ' or Call ResizeToFit
End Sub
...

将此代码添加到与新子模块相同的模块中

Sub ResizeToFit()
Application.ScreenUpdating = False

    Dim i As Long
    For i = Range("D" & Rows.Count).End(xlUp).Row To 1 Step -1
        If IsEmpty(Range("D" & i)) Then
            Rows(i & ":" & i).Delete
        Else
            Range("E" & i) = Split(Range("D" & i), Chr(32))(1)
            Range("D" & i) = Split(Range("D" & i), Chr(32))(0)
        End If
    Next i

    For i = 1 To 5
        If i <> 4 Then
            Cells(1, i).Resize(Range("D" & Rows.Count).End(xlUp).Row, 1).Value = Cells(1, i)
        End If
    Next

Application.ScreenUpdating = True
End Sub

采取这个

在此处输入图片说明

运行我的代码会产生

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在 Excel 单元格中使用 VBA 拆分单词

来自分类Dev

使用 VBA 将 1 个单元格拆分为 3 个和 4 个单元格

来自分类Dev

如何在单个列中排列的Excel中的单元格进行转置和重组?

来自分类Dev

Excel VBA单元格自动前进子拆分词

来自分类Dev

Excel Vba 将多个单元格拆分成列

来自分类Dev

Excel VBA将单元格拆分为多个单元格

来自分类Dev

使用VBA将多列拆分为单元格

来自分类Dev

Excel VBA使用单元格和xlDown选择范围

来自分类Dev

Excel智能拆分和插入单元格

来自分类Dev

如何使用VBA和Match函数更新Excel表中的单元格值?

来自分类Dev

vba-excel:如何使用for循环和if语句排除复制单元格区域

来自分类Dev

如何在保存时使用 VBA 在 excel 中显示消息框和单元格编号

来自分类Dev

在不使用VBA的Excel中拆分字符串(单元格)(例如,用于数组公式)

来自分类Dev

在下一行Excel VBA中使用公式拆分单元格

来自分类Dev

Excel上的VBA删除没有颜色的单元格和相邻单元格

来自分类Dev

Excel VBA - 用文本清除单元格上方和下方的单元格

来自分类Dev

在 Excel 中反转空单元格和非空单元格 - VBA

来自分类Dev

VBA Excel:扩展和缩短单元格范围

来自分类Dev

如何根据VBA中命名的开始和结束单元格选择单元格范围?

来自分类Dev

Excel VBA-将单元格字符串拆分为单个单元格并将单元格复制到新工作表

来自分类Dev

单元格中的多个值-如何重组它们

来自分类Dev

如何使用VBA自动拆分Word表中的单元格

来自分类Dev

如何使用word vba拆分Microsoft Word表格中所有垂直合并的单元格?

来自分类Dev

如何在 VBA 中修剪和清洁单元格

来自分类Dev

如何使用VBA在社区中基于单元格内容搜索来复制,插入和替换单元格数据

来自分类Dev

访问VBA在Excel中拆分所有合并的单元格

来自分类Dev

在最后一个空格处拆分单元格Excel VBA

来自分类Dev

如何在Excel 2010中使用VBA查找连续的最后一个彩色和空白单元格?

来自分类Dev

如何遍历 VBA 和 Excel 中选定列中的每个单元格?

Related 相关文章

  1. 1

    在 Excel 单元格中使用 VBA 拆分单词

  2. 2

    使用 VBA 将 1 个单元格拆分为 3 个和 4 个单元格

  3. 3

    如何在单个列中排列的Excel中的单元格进行转置和重组?

  4. 4

    Excel VBA单元格自动前进子拆分词

  5. 5

    Excel Vba 将多个单元格拆分成列

  6. 6

    Excel VBA将单元格拆分为多个单元格

  7. 7

    使用VBA将多列拆分为单元格

  8. 8

    Excel VBA使用单元格和xlDown选择范围

  9. 9

    Excel智能拆分和插入单元格

  10. 10

    如何使用VBA和Match函数更新Excel表中的单元格值?

  11. 11

    vba-excel:如何使用for循环和if语句排除复制单元格区域

  12. 12

    如何在保存时使用 VBA 在 excel 中显示消息框和单元格编号

  13. 13

    在不使用VBA的Excel中拆分字符串(单元格)(例如,用于数组公式)

  14. 14

    在下一行Excel VBA中使用公式拆分单元格

  15. 15

    Excel上的VBA删除没有颜色的单元格和相邻单元格

  16. 16

    Excel VBA - 用文本清除单元格上方和下方的单元格

  17. 17

    在 Excel 中反转空单元格和非空单元格 - VBA

  18. 18

    VBA Excel:扩展和缩短单元格范围

  19. 19

    如何根据VBA中命名的开始和结束单元格选择单元格范围?

  20. 20

    Excel VBA-将单元格字符串拆分为单个单元格并将单元格复制到新工作表

  21. 21

    单元格中的多个值-如何重组它们

  22. 22

    如何使用VBA自动拆分Word表中的单元格

  23. 23

    如何使用word vba拆分Microsoft Word表格中所有垂直合并的单元格?

  24. 24

    如何在 VBA 中修剪和清洁单元格

  25. 25

    如何使用VBA在社区中基于单元格内容搜索来复制,插入和替换单元格数据

  26. 26

    访问VBA在Excel中拆分所有合并的单元格

  27. 27

    在最后一个空格处拆分单元格Excel VBA

  28. 28

    如何在Excel 2010中使用VBA查找连续的最后一个彩色和空白单元格?

  29. 29

    如何遍历 VBA 和 Excel 中选定列中的每个单元格?

热门标签

归档