gpt4 book ai didi

vba - 简报 VBA : Clearing shape color

转载 作者:行者123 更新时间:2023-12-04 14:26:25 28 4
gpt4 key购买 nike

VBA 专家们,你们好,

我正在尝试编写一个代码来搜索形状颜色,然后将其定位到某个地方。

例子

If shape.Fill.ForeColor.RGB = RGB(210, 210, 210) Then 

With shape
.Width = 700
.Height = 20
.Top = 80
.Left = 30
.Name = "TitleTextBox"
.Fill.Visible = msoFalse
.Fill.Transparency = 1.0 '(somehow when I type 1.0 it will become 1#, not sure why on this also)
End With

End if

我如何使用我的代码:

我使用此代码为某些形状添加填充颜色 Gray = RGB(210,210,210),然后清除颜色并将形状重新定位到我想要的位置

但是,当我再次运行此代码时,添加了灰色的形状将再次重新定位,即使它没有任何填充。

不知何故,我觉得形状记住了应用于它们的颜色,这不是我想要的。

如果有人能提供一些关于如何克服这个问题的见解,我将不胜感激。

谢谢

最佳答案

像这样尝试:

Option Explicit
Public Sub TestMe()

Dim sh As Shape
Dim sld As Slide

Set sld = Application.ActiveWindow.View.Slide

For Each sh In sld.Shapes
If sh.Fill.ForeColor.RGB = RGB(210, 210, 210) Then
With sh
.Fill.ForeColor.RGB = RGB(0, 0, 0)
.Width = 700
.Height = 20
.Top = 80
.Left = 30
.Name = "TitleTextBox"
.Fill.Visible = msoFalse
.Fill.Transparency = 1#
End With
End If
Next sh
End Sub

找到灰色形状后,确保将其颜色更改为 RGB(0,0,0)。因此,如果您再次运行代码,它将不再是灰色的,也不会被考虑在内。我已经用这条线完成了:

        .Fill.ForeColor.RGB = RGB(0, 0, 0)

关于vba - 简报 VBA : Clearing shape color,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45370028/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com