首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Excel中如何从艺术效果中重新设置图片

在Excel中如何从艺术效果中重新设置图片
EN

Stack Overflow用户
提问于 2021-06-10 16:29:06
回答 1查看 163关注 0票数 1

我在想办法。我的Excel文件中有一张图片。每当我点击它时,我都希望它变成灰度,所以我使用以下vba代码:

代码语言:javascript
复制
Sheets("Dashboard-3").Shapes("ReportsIcon").Fill.PictureEffects.Insert msoEffectPencilGrayscale

而且效果很好。但是当我再次单击时,我希望它回到原来的颜色和格式(这是Excel中的Reset Picture按钮)。不幸的是,录制宏不明白这一点。我使用msoEffectNonemsoEffectTypeNone,但是不工作。也搜索了很多,但似乎没有人试图重新设置艺术效果回来。有人知道我该用什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-10 17:13:20

您不需要设置不同的效果,您必须使用Delete从分配给图片的PictureEffects列表中删除它。下面的子程序展示了如何切换它(如果它存在,它将被移除,否则将被应用)

代码语言:javascript
复制
Sub toggleEfect(sh As Shape, efecttype As Long)
    Dim fe As PictureEffect, found As Boolean
    For Each fe In sh.Fill.PictureEffects
        If fe.Type = efecttype Then
            fe.Delete
            found = True
        End If
    Next
    If Not found Then sh.Fill.PictureEffects.Insert efecttype
End Sub

你可以用

代码语言:javascript
复制
toggleEfect Sheets("Dashboard-3").Shapes("ReportsIcon"), msoEffectPencilGrayscale
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67925123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档