Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3105|回复: 12

[已解决]数据行变列

[复制链接]
发表于 2015-5-25 09:56 | 显示全部楼层 |阅读模式
本帖最后由 dong66094799 于 2015-5-26 10:43 编辑

缴费数据.zip (7.26 KB, 下载次数: 15)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2015-5-25 09:57 | 显示全部楼层
在线等待,没看明白的,可以提问,谢谢各们
回复

使用道具 举报

发表于 2015-5-25 10:45 | 显示全部楼层
  1. Sub Macro1()
  2. Dim arr, brr, i&, j%, k%, s&
  3. arr = Sheet1.Range("a1").CurrentRegion
  4. w = Array(6, 7, 8, 9, 10, 14)
  5. ReDim brr(1 To 60000, 1 To UBound(arr, 2))
  6. For i = 2 To UBound(arr)
  7.     For j = 0 To UBound(w)
  8.         If arr(i, w(j)) <> "" Then
  9.             s = s + 1
  10.             brr(s, w(j)) = arr(i, w(j))
  11.             For k = 1 To 4
  12.                 brr(s, k) = arr(i, k)
  13.             Next
  14.             For k = 11 To 13
  15.                 brr(s, k) = arr(i, k)
  16.             Next
  17.         End If
  18.     Next
  19. Next
  20. Sheet2.Activate
  21. ActiveSheet.UsedRange.Clear
  22. Sheet1.Rows(1).Copy [a1]
  23. With Range("a2").Resize(s, UBound(brr, 2))
  24.     .Value = brr
  25.     .Borders.LineStyle = xlContinuous
  26. End With
  27. End Sub
复制代码
回复

使用道具 举报

发表于 2015-5-25 10:47 | 显示全部楼层
………………

缴费数据.zip

12.5 KB, 下载次数: 14

回复

使用道具 举报

发表于 2015-5-25 11:09 | 显示全部楼层
没看懂要表达的意思
回复

使用道具 举报

 楼主| 发表于 2015-5-25 11:16 | 显示全部楼层
非常感谢(dsmch)3楼帮助,能不能把身份证号码那列修改为文本格式的,谢谢
回复

使用道具 举报

发表于 2015-5-25 11:19 | 显示全部楼层    本楼为最佳答案   
短信收到……
Sub Macro1()
Dim arr, brr, i&, j%, k%, s&
arr = Sheet1.Range("a1").CurrentRegion
w = Array(6, 7, 8, 9, 10, 14)
ReDim brr(1 To 60000, 1 To UBound(arr, 2))
For i = 2 To UBound(arr)
    For j = 0 To UBound(w)
        If arr(i, w(j)) <> "" Then
            s = s + 1
            brr(s, w(j)) = arr(i, w(j))
            For k = 1 To 4
                brr(s, k) = IIf(k = 3, "'" & arr(i, k), arr(i, k))
            Next
            For k = 11 To 13
                brr(s, k) = arr(i, k)
            Next
        End If
    Next
Next
Sheet2.Activate
ActiveSheet.UsedRange.Clear
Sheet1.Rows(1).Copy [a1]
With Range("a2").Resize(s, UBound(brr, 2))
    .Value = brr
    .Borders.LineStyle = xlContinuous
End With
End Sub
回复

使用道具 举报

 楼主| 发表于 2015-5-25 13:44 | 显示全部楼层
非常感谢(dsmch)正解
回复

使用道具 举报

发表于 2015-5-25 16:03 | 显示全部楼层
我也是干社保的,认为缴费数据表还好用一点,请问楼主你改表的目的是什么啊!
回复

使用道具 举报

 楼主| 发表于 2015-5-26 10:42 | 显示全部楼层
导入数据
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 17:28 , Processed in 0.506243 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表