excel将一列移动到另一列左侧(用VBA使Excel一列二行轻易快速重排成一行二列)

feifei123 发布于 2025-02-25 阅读(5)

要求:现在有这样一个EXCEL数据和表格形式转换的需要,即将Excel两行轻易快速重排,变成一行二列,先将列 A 中的数据按照每两行为一组进行复制(将当前行的数据复制到列 C、将下一行的数据复制到列 D。

),最后删除列 C 和列 D 中的空白单元格调整表的格式见下图所示:

实现方法(VBA代码):Sub ProcessData() Dim lastRow As Long Dim i As Long Dim rng As Range Dim cell As Range 获取A列最后一行的行号 lastRow = Cells(Rows.Count,"A").End(xlUp).Row 从第二行开始,每两行复制一次数据 For i =2 To lastRow Step 2 将当前行的数据复制到C列 Cells(i,"C").Value = Cells(i,"A").Value 将下一行的数据复制到D列 Cells(i,"D").Value = Cells(i +1,"A").Value Next i 获取C列最后一行的行号 lastRow = Cells(Rows.Count,"C").End(xlUp).Row 设置范围为C2:D最后一行 Set rng = Range("C2:D"& lastRow) 遍历范围中的每个单元格 For Each cell In rng 检查单元格是否为空 If cell.Value ="" Then 删除空白单元格,并将上方的单元格向上移动 cell.Delete Shift:=xlUp 重新设置范围为C2:D最后一行 Set rng = Range("C2:D"& lastRow) End If Next cellEnd Sub

这段代码可以用于对Excel表格中的数据进行处理和转换,使其符合特定的数据结构或格式要求。通过适当修改代码中的列号和范围,可以根据具体情况进行定制和扩展。

亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。

标签:  数据 复制 单元格 行号 代码 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。