注册 登录
编程论坛 Excel/VBA论坛

请教,如何将一个单元格的内容分成多个单元格,并在同一列显示

zhr822 发布于 2020-11-06 18:34, 3816 次点击
请教各位前辈,我希望把一个单元格的数据纵向排列,每个数据占一个单元格,如何实现?
如下图,也就是把图1变成图2。
图1:
只有本站会员才能查看附件,请 登录


图2:
只有本站会员才能查看附件,请 登录

5 回复
#2
BaoZhongke2020-11-08 03:01
先使用“数据”页面的分列,固定列宽的方式将单元格的内容分成一行;然后复制;另起一行粘贴
粘贴时,选中一个单元格,单击鼠标右键选择“选择性粘贴”,在选择性粘贴对话框中选择“转置”;
#3
zhr8222020-11-11 12:29
回复 2楼 BaoZhongke
谢谢你的解答,使用“数据”页面的分列,固定列宽的方式将单元格的内容分成一行,设置字段宽度的时候是需要一个一个把标尺移动到数据间隔处,我如果有100个字符数据,每个之间都需要手动分割,能不能有简便的方法呢?
#4
sdta2021-04-13 23:40
学习VFP吧,数据处理是VFP的强项,速度天下第二
#5
sdta2021-04-17 12:38
变通一下吧
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2021-4-17 12:41编辑过]

#6
山泉水2023-05-31 12:50
Option Explicit

Sub trnsp()

    Dim s() As String
   
    Dim n&
   
    n = Len(Cells(1, 1))
   
    ReDim s(0 To 0, 0 To n - 1)
   
    Dim i&
   
    For i = 1 To n Step 1
   
        If i <> 1 And i <> n Then
   
            s(0, i - 1) = Mid(Cells(1, 1), i, 1)
        
        ElseIf i = 1 Then
        
            s(0, i - 1) = Left(Cells(1, 1), 1)
            
        ElseIf i = n Then
        
            s(0, i - 1) = Right(Cells(1, 1), 1)
        
        End If
        
    Next i

    Dim r As Range
   
    Set r = Range(Cells(2, 2), Cells(n + 1, 2))
   
    r.Value = Application.Transpose(s)
   
End Sub
1