ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何使用VBA实现表格转换?

如何使用VBA实现表格转换?

作者:绿色风 分类: 时间:2022-08-17 浏览:84
楼主
wise
Q:如何使用VBA实现表格转换?
如图所示:

 
A:ALT+F11→插入模块→模块中输入以下代码:
  1. Sub test()
  2. Dim arr, rng As Range
  3. Dim k As Long, i As Long
  4. k = Cells(Rows.Count, 2).End(xlUp).Row
  5. '取得最后有数据的行
  6. arr = Range("B1:B" & k)
  7. '定义第二列为一个数组
  8. For i = 2 To k Step 18
  9. '从第二行开始循环,并且以18行的间隔进行循环
  10.    Set rng = Sheets("数据区").UsedRange.Find(arr(i, 1), lookat:=xlWhole)
  11.    '在数据区中,寻找B列中的数据
  12.    If Not rng Is Nothing Then
  13.       rng.Offset(1, 0).Resize(16, 3).Copy Cells(i + 1, 2)
  14.       '如果找到,则在找到的单元格下移一行,转置提取16行,3列的数据到B列中相应的单元格下面
  15.    End If
  16. Next i
  17. End Sub

如何根据名字实现表格转换.rar
2楼
xyf2210
看看

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap