繁体   English   中英

根据单元格值使用 vba 移动形状

[英]Moving shape with vba based on cell value

希望有人能帮我解决这个问题。

我想根据输入到单元格 E4 中的值将单元格 H4 中的流程图终止符形状移动到特定坐标

示例:如果我在单元格 E4 中输入 0,我希望流程图终止符形状移动到顶部 = 110 和左侧 = 918

这应该将形状直接放在关卡图像的中心,如下面的 H4 所示

到目前为止我得到的唯一部分是如何移动形状,但我不知道如何将形状移动与单元格 E4 值的变化相关联

 Public Sub Test() Dim oShape As Shape Set oShape = ActiveSheet.Shapes("Flowchart: Terminator 123") oShape.Top = 110 oShape.Left = 918 End Sub

结束子

在此处输入图像描述

如前所述,您可以使用Worksheet_Change()事件。 您检查目标是否为 E4,然后检查该目标的值 (Range obj)。

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = Range("E4").Address Then
        If Target.Value = 0 Then
            ActiveSheet.Shapes("Flowchart: Terminator 123").Top = 110
            ActiveSheet.Shapes("Flowchart: Terminator 123").Left = 918
        End If
    End If
End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM