gpt4 book ai didi

excel - 将单元格与 Excel 形状链接

转载 作者:行者123 更新时间:2023-12-02 07:55:21 31 4
gpt4 key购买 nike

在 Excel 中,我们插入一个形状,然后可以通过选择形状并输入以下内容将其链接到单元格值:编辑栏中的单元格引用。我想知道:我们如何以编程方式做到这一点。喜欢

For Each shape As Excel.Shape In workshet.Shapes
'is there something like shape.Formula or any method from which I can do the above
task.
Next

Here是我想以编程方式执行的操作

已经好几天了,我正在寻找它。真的需要帮助,非常感谢。

最佳答案

您不需要使用“选择”将公式应用于形状。应尽可能避免选择,因为它会使代码膨胀,并且可能产生意想不到的后果 - 例如触发事件

相反,您可以使用 DrawingOBject 直接使用公式,请参阅FormApp,它还可以让您操作现有公式(即向 A2 添加 6 个单元格以使其成为 A8、A12 至 A18 等)。第二个代码例程 FormAdd 进行此调整,它适用于单元格地址和范围名称

Sub FormApp()
Dim Shp As Shape
For Each Shp In ActiveSheet.Shapes
'formula
Shp.DrawingObject.Formula = "=A1"
'range name
Shp.DrawingObject.Formula = "=RangeName"
Next
End Sub

Sub FormAdd()
Dim Shp As Shape
Dim rng1 As Range
For Each Shp In ActiveSheet.Shapes
Set rng1 = Nothing
If Len(Shp.DrawingObject.Formula) > 0 Then
On Error Resume Next
Set rng1 = Range(Shp.DrawingObject.Formula)
On Error GoTo 0
If Not rng1 Is Nothing Then Shp.DrawingObject.Formula = "=" & rng1.Offset(6, 0).Address
End If
Next
End Sub

关于excel - 将单元格与 Excel 形状链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8189317/

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