vba Execl 为工作表添加控件
?
1. 用OLE的方法为工作表添加控件,返回值是OLEObject,返回值 .object就是被添加控件的类型,例如下面这个添加一个图表控件,myTChart 就是被添加控件,可以设置相关属性和调用方法
dim oleObject as OLEObject
dim myTChart as TeeChart.TChart
set oleObject = ActiveSheet.OLEObjects.Add(ClassType:="TeeChart.TChart.8", Link:=False, _ DisplayAsIcon:=False, Left:=ActiveCell.Left, Top:=ActiveCell.Top, Width:=450, Height:=285)
set myTChart = oleObject.object
?
2. 这种方法也同样能添加控件,但是不是所有的都能添加,上面的图表控件就加不了
dim myButton as ButtonSet myButton = ActiveSheet.Buttons.Add(ActiveCell.Left , ActiveCell.Top, 54, 24)
?添加事件 “ToolsBtn_Click”这个事件要在【模块】中定义,否则访问不到,会提示找不到宏......
toolsBtn.OnAction = "ToolsBtn_Click"
?