将START和STOPbutton添加到现有的代码

在列A中input一个值。要开始,请双击列A中的值。要停止,请双击任何空白单元格。 停止监视在B2单元中运行。

Public stopMe As Boolean Public resetMe As Boolean Public myVal As Variant Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 1 Then If Target.Value = myVal And Target.Value <> "" Then 'Changed Dim startTime, finishTime, totalTime, timeRow startTime = Timer stopMe = False resetMe = False myTime = Target.Offset(, 2).Value Target.Offset(, 1).Select startMe: DoEvents timeRow = Target.Row finishTime = Timer totalTime = finishTime - startTime Target.Offset(, 1).Value = Format(800 + totalTime, "0000") If resetMe = True Then Target.Offset(, 1).Value = 0 Target.Offset(, 2).Value = 0 stopMe = True End If If Not stopMe = True Then Target.Offset(, 2).Value = totalTime GoTo startMe End If Cancel = True End Else 'Not Changed stopMe = True Cancel = True End If End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) myVal = Target.Value End Sub 

我想制作启动,停止和重置button,并链接到这个代码,但无法做到这一点。

这里有一些代码来创buildbutton。 一旦你的工作表上有button,将它们移动到你想要的位置,调整它们的大小,并为它们分配代码:

 Sub ThreeButtons() ary = Split("Start,Stop,Reset", ",") t = 10 For i = 1 To 3 Set shp = ActiveSheet.Shapes.AddShape(5, 100, t, 60, 60) shp.TextFrame.Characters.Text = ary(i - 1) shp.ShapeStyle = msoShapeStylePreset & (40 - i) t = t + 70 Next i End Sub 

在这里输入图像说明

改编自: peltiertech