我被卡住了。我找遍了上上下下,到处找。我在那里找不到解决方案。
是否可以通过表单控制按钮激活AutoShapes对象中的线条工具?
我知道如何通过宏从固定位置绘制一条线,但我希望用户绘制自己的线。
ActiveSheet.Shapes.AddConnector(msoConnectorStraight, 88.8, 447.6, 168.6, 480.6 _
).Select
有没有一种方法可以激活绘图工具,而不是实际绘制它,并允许用户自己完成其余的过程?
先谢谢你,
Teebee
发布于 2018-07-11 19:57:01
2007年前,一切都是带有ID
的CommandBarButton
。获得该CommandBarButton
后,就可以调用它的Execute
方法。
Office2007去掉了命令栏,引入了功能区。一些命令栏仍然可用,你可以像以前一样调用它们,但据我所知,没有与“形状”或“连接器”远程相关的CommandBarButton
。
我正在使用这个方法:
Public Sub FindCmdBarControl(ByVal name As String)
Dim cmdbar As CommandBar
For Each cmdbar In Application.CommandBars
Dim ctrl As CommandBarControl
For Each ctrl In cmdbar.Controls
If ctrl.TooltipText Like "*" & name & "*" Or ctrl.Caption Like "*" & name & "*" Then
Debug.Print cmdbar.name, ctrl.Caption, ctrl.TooltipText, ctrl.ID
End If
Next
Next
End Sub
运行FindCmdBarControl "line"
的...but会产生以下输出:
Formatting &Underline &Underline (Ctrl+U) 115
Cell Sp&arklines 31623
Series Add T&rendline... Add T&rendline... 914
Format Data Series Add T&rendline... Add T&rendline... 914
List Range Popup Sp&arklines 31623
Nil &Line Insert Line Sparkline 18927
Nil &Column Insert Column Sparkline 18928
Nil &Win/Loss Insert Win/Loss Sparkline 18929
Nil Edit &Single Sparkline's Data... Edit &Single Sparkline's Data... 19223
Nil &Group Group Selected Sparklines 19226
Nil &Ungroup Ungroup Selected Sparklines 19227
Nil &Clear Selected Sparklines &Clear Selected Sparklines 19229
Nil C&lear Selected Sparkline Groups C&lear Selected Sparkline Groups 19230
Nil &Hidden && Empty Cells... Sparkline Hidden && Empty Cells 19224
Nil &More Colors... More Sparkline Colors 19451
Nil Custom &Weight... Sparkline Custom Weight 19453
Nil &Line Convert to Line Sparkline 20450
Nil &Column Convert to Column Sparkline 20451
Nil &Win/Loss Convert to Win/Loss Sparkline 20452
Nil &More Colors... More Sparkline Negative Point Colors 20473
Nil &More Colors... More Sparkline Marker Colors 20474
Nil &More Colors... More Sparkline High Point Colors 20475
Nil &More Colors... More Sparkline Low Point Colors 20476
Nil &More Colors... More Sparkline First Point Colors 20477
Nil &More Colors... More Sparkline Last Point Colors 20478
Line Color &More Outline Colors... &More Outline Colors... 1052
Built-in Menus &Group and Outline 30032
因此,假设您想要调用&Underline
命令(ID 115),您可以这样做:
Application.CommandBars("Formatting").FindControl(ID:=115).Execute
运行FindCmdBarControl "connector"
没有任何结果,而且我也没有想法了。看看你是否能找到你要找的命令ID ...也就是说,Ribbon中已经有了一个内置按钮,它可以执行您想要的操作(让用户绘制一个连接器)……
发布于 2018-07-11 21:53:09
非常感谢您的回复。我设法在Connectors中找到了ID。
Application.CommandBars("Connectors").FindControl(ID:=1042).Execute
发布于 2020-04-07 08:44:49
只需指出正确的ID:
Commandbar =“绘图”
Controlname=“行”(&L)
ID = 130
https://stackoverflow.com/questions/51292849
复制相似问题