把一列的图片转换成多行多列(vba配合int取整mod取余函数)
浏览人数:
原始表样式如下图:

要求得到的效果如下图:

使用vba代码后,

要求得到的效果如下图:

使用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