站内搜索:

把一列的图片转换成多行多列(vba配合int取整mod取余函数)

浏览人数:
原始表样式如下图:


要求得到的效果如下图:


使用vba代码后,
 

Sub 复制图片()

For old = 1 To 20
'复制图片列
Sheet1.Activate
Cells(old, 2).Select
Selection.Copy   '选择原始表,复制数据

'判断列
c = old Mod 5
If c <> 0 Then
   c = c
Else
   c = 5
End If
Debug.Print c
'判断行
r = Int(old / 5)
If r < old / 5 Then
    r = r * 2 + 1
Else
    r = r * 2 - 1
End If

Sheet10.Activate   '选择结果表,粘贴数据
Cells(r, c).Select
ActiveSheet.Paste

'复制文字列
Sheet1.Activate
Cells(old, 3).Select
Selection.Copy   '选择原始表,复制数据
Sheet10.Activate   '选择结果表,粘贴数据
Cells(r + 1, c).Select
ActiveSheet.Paste
Next
End Sub

制作表格zhizuobiaoge.com
Copyright@all rights reserved