在excel的d2,d10,d18……d34单元格批量的分别插入图片
发布网友
发布时间:2024-10-15 14:55
我来回答
共1个回答
热心网友
时间:2024-11-24 08:33
经测试如下代码可执行:
Sub Macro()
'假设A列分别为学生的姓名,同时照片文件存放在d:\pic\文件夹下,且照片按学生的名字进行命名,照片的类型为JPG
Dim strName As String
For i = 2 To 2 + 8 * 49 Step 8
strName = Cells(i, 1).Value
Cells(2, i).Select
ActiveSheet.Pictures.Insert("d:\pic\" + strName + ".jpg").Select
Selection.ShapeRange.Top = Cells(i, 4).Top
Selection.ShapeRange.Left = Cells(i, 4).Left
'设定图片的高度和宽度
Selection.ShapeRange.Height = 80 '此为象素单位,5cm。
Selection.ShapeRange.Width = 80
Next
End Sub
补充回答:
Selection.ShapeRange.Top = Cells(i, 4).Top
Selection.ShapeRange.Left = Cells(i, 4).Left
上面的代码中(i,4),表示在第i行,第四列(D列)插入图片。如果在第2行平动的话,那就把代码的位置更改一下就可以了。
-------------------------------------------
名子如果在B列或者I列呢?strName = Cells(i, 1).Value 代码中的1,代表是在A列,如果是2,那么就是在B列,以此类推
-------------------------------------------
我的EXCEL是2007版,重新试了一下,没有发现问题