Excel VBA裁剪图片/形状并放入单元格

时间:2017-10-02 07:05:22

标签: excel vba

我正在处理五张图片(打印屏幕形状),并希望将它们放置在选定的单元格中,例如。细胞N21,P21,S21,U21& W21。我有下面的VBA代码裁剪五个图片/形状,它工作正常,但我不知道如何将它们放在上面的选定单元格中。任何人都可以开导我吗?另外,如何用VBA按钮删除五张图片?

Public Function IsValid(id As String)
    If Char.IsLetter(id, 0) = False Then
        Return False
    End If

    If id.Skip(1).All(Char.IsDigit) = False Then
        Return False
    End If   

    Return True   
End Function

1 个答案:

答案 0 :(得分:1)

您可以按照以下帖子中显示的位置pic into excel at specific cell这可以通过将形状的左上角属性设置为单元格引用来实现。

假设您要删除活动工作表中的所有形状,您可以在以下行中添加一些内容:

Dim shp As Excel.shape

For Each shp In ActiveSheet.Shapes
    shp.Delete
Next

如果特定的5个形状可以使用相同的结构,但测试形状是否具有某个名称然后删除。

If shp.Name = "Shape1" Then 
        shp.Delete 
End If 

我也更喜欢明确地命名我的照片,例如myPict.Name =“Pic1”这可以避免以后跟踪形状编号的问题。