Excel:多种方法实现1列转多列表格(含vba实现)

要求:将A列中的名字放到右边的表格里面


一、当数据较少的时候手动实现更快

实现的步骤:
1.先按照下面的方式填充右边的表格


2.填充完毕表格的样子

3.选中该表格所在的区域 → 点击菜单栏“开始” → 查找 → 替换

4.将表格中的a全部替换成=a,点击“全部替换”

5.替换后的效果

二、当有大量的数据时,手动下拉填充很麻烦,vba代码实现更快


点击“查看代码”,进入编写代码页面,将下列代码填入(可根据实际情况改动:)

Sub test()
Dim colindex As Integer
Dim rowindex As Integer
Dim i%
Dim name As String

'获取最后一行
lastrow = Cells(Rows.Count, 1).End(xlUp).Row

'我这里表格的第一个单元格所在的行,根据自己需要改变数字
rowindex = 3
'我这里表格的第一个单元格所在的列,根据自己需要改变数字
colindex = 3

'从第一行到数据所在的最后一行
For i = 2 To lastrow
    '获取每一个单元格的名字
    name = Cells(i, 1).Value
    '将获取的名字放入右边的表中
    Cells(rowindex, colindex).Value = name
    
    '填入表中的时候行不变,名字按列放入
    colindex = colindex + 1
    '当列超过G列的时候换下一行,即行数加1,列数回到表格最左边一列
    If colindex > 7 Then
        rowindex = rowindex + 1
        colindex = 3
    End If
Next i
End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值