用VBA删除excel中指定工作表中所有png格式图片
时间: 2024-02-03 09:12:38 浏览: 25
你可以使用以下VBA代码删除指定工作表中的所有PNG格式图片:
```
Sub DeletePNGImages()
Dim ws As Worksheet
Dim shp As Shape
Set ws = ThisWorkbook.Worksheets("指定工作表名称") '替换为你需要操作的工作表名称
For Each shp In ws.Shapes
If shp.Type = msoPicture And Right(shp.Name, 3) = "png" Then
shp.Delete
End If
Next shp
End Sub
```
将代码中的“指定工作表名称”替换为你需要操作的工作表名称,然后在VBA编辑器中运行该代码即可。
相关问题
用VBA删除excel中的所有png格式图片
以下是删除Excel中所有PNG格式图片的VBA代码:
```
Sub DeletePNGImages()
Dim sh As Worksheet
Dim pic As Shape
For Each sh In ActiveWorkbook.Worksheets
For Each pic In sh.Shapes
If pic.Type = msoPicture And LCase(Right(pic.Name, 3)) = "png" Then
pic.Delete
End If
Next pic
Next sh
End Sub
```
请注意,此代码将删除所有工作簿中的PNG格式图片。如果您只想删除特定工作表中的PNG格式图片,请修改代码以仅在所需的工作表上运行。
excel vba 将工作簿所有工作表保存为图片
可以使用以下 VBA 代码将工作簿中的所有工作表保存为图片:
```
Sub SaveWorksheetsAsImages()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ws.Activate
'设置图片文件名为工作表名称
Dim fileName As String: fileName = ws.Name & ".png"
'保存工作表为图片
ActiveSheet.Export fileName:=fileName, FilterName:="PNG"
Next ws
End Sub
```
这段代码将遍历工作簿中的所有工作表,将每个工作表保存为以工作表名称命名的 PNG 图片文件。你可以将代码复制到 VBA 编辑器中,并在工作簿中运行该宏。