首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >excel-2007格式的vb代码->重新着色->设置透明色

excel-2007格式的vb代码->重新着色->设置透明色
EN

Stack Overflow用户
提问于 2009-07-28 16:15:07
回答 2查看 7.9K关注 0票数 1

您好,您可以显示一个vb代码的excel-2007格式->重新着色->设置透明颜色对一个图像插入...

顺便说一下,忘了说excel-2007记录宏不会记录这些东西,否则我就不会在这里问它了……:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-28 16:58:05

好的,下面是我在Excel2007中写的一个宏,它可以工作:

代码语言:javascript
复制
Sub Macro3()
    Dim NewSheet As Worksheet, oldws As Worksheet
    Set oldws = ActiveWorkbook.ActiveSheet

    Dim i As Integer, obj As Shape
    Dim picFmt As PictureFormat

    Set NewSheet = Worksheets.Add
    NewSheet.Range("A1").Value = oldws.Name
    i = 3
    NewSheet.Range("A2").Value = "Name"
    NewSheet.Range("B2").Value = "Link Type"
    For Each obj In oldws.Shapes
        NewSheet.Cells(i, 1).Value = obj.Name
        NewSheet.Cells(i, 2) = obj.Type
        Set picFmt = obj.PictureFormat
        With picFmt
            NewSheet.Cells(i, 3) = .TransparencyColor
            'set Black as the Transparent color'
            .TransparencyColor = RGB(0, 0, 0)
        End With
        i = i + 1
    Next
End Sub
票数 0
EN

Stack Overflow用户

发布于 2009-07-28 16:32:12

我在Excel 2003中录制了一个宏,得到的结果如下:

代码语言:javascript
复制
Selection.ShapeRange.PictureFormat.TransparentBackground = msoTrue
Selection.ShapeRange.PictureFormat.TransparencyColor = RGB(5, 95, 209)
Selection.ShapeRange.Fill.Visible = msoFalse

我认为这也适用于Excel2007,因为一切都倾向于向前兼容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1195162

复制
相关文章

相似问题

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