亲,是下图这个意思吧?
打开你的Excel文件,按“Alt+F11”打开VBA编辑窗口,然后在左侧对应的Sheet上双击,右侧空白处粘贴下面的代码。关闭VBA窗口。
Public flag As Integer
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Target.Count = 1 And Target.Address = "$B$1" Then
Application.EnableEvents = False
If flag = 0 Then
Range("B1").Interior.Color = RGB(255, 0, 0)
Range("R1") = 2
flag = 1
Else
Range("B1").Interior.Color = RGB(125, 125, 125)
Range("R1") = ""
flag = 0
End If
Range("B2").Select
Application.EnableEvents = True
End If
End Sub
改写方法:
打开 Microsoft Office Excel 2007,点击 “开始” ->“Excel 选项”。
在弹出的对话框中,选择“常规”选项卡,并在右侧点选“在功能区显示‘开发工具’选项卡”,并单击“确定"。
在单元格A1中输入“弧度”,单元格B1中输入“角度”,单元格A2中输入“3.14”,然后在单元格B2中输入公式"=DEGREES(A2)"在按下回车后,该单元格输出结果为179.9087477。
注:DEGREES函数的作用是将弧度转化为角度。
接下来,我们用VBA实现同样的功能。点击“开发工具”选项卡,单击“Visual Basic”,启动Visual Basic编辑器。
在“Microsoft Excel 对象”上点鼠标右键,依次点击“插入” -> “模块”,创建“模块1”,并在该模块中输入内容:
Sub 转换()
MsgBox Application.WorksheetFunction.Degrees(3.14)
End Sub
点击“运行子过程/用户窗体”按钮,在弹出的对话框中选择“转换”,然后点击“运行”按钮。
程序弹出对话框,结果与在Excel中利用公式输出的结果一样,只是有效数字的位数不一样,这可以根据需要加以取舍。
这个效果的实现要借助于vba来捕捉鼠标动作。
有onclick这个动作吖