[[20240731153053]] 『マクロを教えてください。』(なみ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『マクロを教えてください。』(なみ)

?@
A1セルが1の時はマクロ1を実行。1以外の時はエラー表示する。
(値が正しくありません)的なのを表示する

?A
A1セルが1、B1セルが2の時はマクロ2を実行。
それ以外の時はエラー表示する。

?B
D1:E5セルのうち1つでもセルが赤く塗りつぶされていたらエラー表示。
塗りつぶしが無い場合はマクロ3を実行。

以上、コードを教えてください。
それぞれ別ものと考えてください。

よろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows10 >


文字化けしてます。
?@は1番
?Aは2番
?Bは3番

です。
(なみ) 2024/07/31(水) 15:39:50


    Sub いちばん()
      If Range("A1").Value = 1 Then
         Call マクロ1
      Else
         MsgBox "エラー", vbCritical
      End If
    End Sub

    Sub にばん()
      If Range("A1").Value = 1 And Range("B1").Value = 2 Then
         Call マクロ2
      Else
         MsgBox "エラー", vbCritical
      End If
    End Sub

    Sub さんばん()
      Dim C As Range
      For Each C In Range("D1:E5").Cells
          If C.DisplayFormat.Interior.Color = vbRed Then
             MsgBox "エラー", vbCritical
             Exit Sub
          End If
      Next
      Call マクロ3
    End Sub

    Sub マクロ1()
      MsgBox "マクロ1"
    End Sub
    Sub マクロ2()
      MsgBox "マクロ2"
    End Sub
    Sub マクロ3()
      MsgBox "マクロ3"
    End Sub
(´・ω・`) 2024/07/31(水) 15:48:21

こういうことですかね?

Option Explicit

Private Sub マクロ1()

    If Range("A1").Value = 1 Then
        MsgBox "マクロ1"
    Else
        MsgBox "えらー"
    End If
End Sub

Private Sub マクロ2()

    If Range("A1").Value <> 1 Then GoTo WayOut
    If Range("B1").Value <> 2 Then GoTo WayOut

    MsgBox "マクロ2"

    Exit Sub

WayOut:

    MsgBox "エラー"
End Sub

Private Sub マクロ3()

    For Each c In Range("D1:E5")
        If c.DisplayFormat.Interior.Color = vbRed Then GoTo WayOut
    Next

    MsgBox "マクロ3"

    Exit Sub

WayOut:

    MsgBox "えらー"
End Sub

(まっつわん) 2024/07/31(水) 19:44:14


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.