基于特定单元格“值”的多工作表工作簿上的宏自动运行

时间:2016-08-11 05:21:21

标签: excel excel-vba macros vba

有很多关于使用VBA代码根据单元格的“值”自动运行宏的讨论。我需要帮助的是编写代码以基于单元格A1(SHEET 2)(开/关)的“值”自动启动宏。工作表1有一个Active X按钮,它链接到Sheet 1上的一个单元格,然后Sheet 2使用=Sheet1(cell)公式,然后我使用=if公式将true / false更改为on / off。(Sheet 2)当单元格“A1”在打开和关闭之间变化时,我希望宏启动。

Sub H1TL0()
'
' 
H1TL0 Macro
'

'


Sheets("LASER LOG").Select
Rows("5:5").Select
Application.CutCopyMode = False
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets(" LASER WORKSHEET").Select
Range("G78").Select
Selection.Copy
Sheets("LASER LOG").Select
Range("B5").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
    xlNone, SkipBlanks:=False, Transpose:=False
Sheets(" LASER WORKSHEET").Select
Range("G80").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("LASER LOG").Select
Range("C5").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
    xlNone, SkipBlanks:=False, Transpose:=False
Sheets(" LASER WORKSHEET").Select
Range("G83").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("LASER LOG").Select
Range("D5").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
    xlNone, SkipBlanks:=False, Transpose:=False
Range("F14").Select
Sheets(" LASER WORKSHEET").Select
End Sub

我已经运行了Macro H1TL0,它运行正常。

P.S。我是VBA的新手(就像3天新的一样)所以请忍受我的无知。

1 个答案:

答案 0 :(得分:0)

 'Place below sub in [ThisWorkbook] code pane  
 Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
     If StrComp(ActiveSheet.Name, "Dashboard") = 0 Then

       If ActiveSheet.Cells(1, 1).Value = "Cell Value" Then
       'Put Condition here. if there are multiple then add elsif
        End If
     End If
    End Sub