比较难处理,合并两个宏可以简单的这么处理 Sub 转换JPEG格式() Dim sht As Worksheet Dim p As Picture Dim a, b 取消组合 For Each sht In Sheets With sht .Activate …… 如果图片和组合框有规律的话好办一点 假设组合的图片里不含有其他的独立的图形,那在取消组合的时候记录下这个组合图形对应单元格的位置,如 Sub 取消组合() Dim sht As Worksheet, s As Shape For Each sht In Sheets With sht .Activate For Each s In sht.Shapes If s.Type = msoGroup Then Debug.Print s.TopLeftCell.Address, s.BottomRightCell.Address s.Ungroup End If Next End With Next MsgBox "取消所有图片组合" End Sub 及记录了图形所在位置的最左上角的单元格位置和最右下角的单元格位置,等剪切、粘贴之后,再在所有图形里循环,如果它的s.TopLeftCell.Address, s.BottomRightCell.Address在原先组合图形之类的,就把这几个图形组合,如果组合里面的为picture的话,就置底 楼主可以自己试验试验 |