2016-08-11 10 views
-1

VBAコードを使用してセルの「値」に基づいてマクロを自動実行する方法については、多くの議論があります。私が助けが必要なのは、セルA1(SHEET 2)の "VALUE"(On/Off)に基づいてマクロを自動起動するコードを書くことです。シート1にはシート1のセルにリンクされたアクティブXボタンがあり、シート2には=Sheet1(cell)という式が使用されています。=ifの式を使用して、true/falseをオン/オフに変更します(シート2)オンとオフの間でマクロを開始したいと思います。特定のセルの「値」に基づいたマルチシートブックのマクロ自動実行

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 

マクロH1TL0を実行しても問題なく動作します。

P.S.私はVBAの新しいブランドです(3日間の新着)ので、私の無知を抱きしめてください。

+0

「選択...ケース」ステートメントを使用して、目的のマクロ(サブルーティーン)を「呼び出し」できます。 – Trimax

+0

私の質問を編集していただきありがとうございます。私はフォーマルスタイルを学ぶために最善を尽くします。 – Trygve

答えて

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 
+0

ありがとうございます。それをすべて理解するためにいくつかの勉強が必要でしたが、現在は機能しています。 – Trygve

関連する問題