よろしくお願いします。エクセルは2013です
いつもgooの皆さんに大変お世話になっています
次の If 文を Select Case に書き換えるには、どう書き直したらよいでしょうか?
Ifがネストになっていて、自分でもよく分からなくなってしまって、マクロが狙った動きを
してくれません(頭の中で整理できません)
そこで、Select Case に書き換えたら、少しはコード全体の見通しがよいくなるかと思い
質問させていただきました
If Range("B40") = "Y" And Range("C40") <> "Y" Then
処理1
ElseIf Range("C40") = "Y" And Range("B40") <> "Y" Then
処理2
ElseIf Range("B40") = "Y" And Range("C40") = "Y" Then
処理3
ElseIf Range("B40") <>"Y" And Range("C40") <> "Y" Then
処理4
End if
No.2ベストアンサー
- 回答日時:
こんな感じでしょうか?
見通しがよくなったかどうかは見方によりますね。
Select Case True
Case (Range("B40") = "Y" And Range("C40") <> "Y")
処理1
Case (Range("B40") <> "Y" And Range("C40") = "Y")
処理2
Case (Range("B40") = "Y" And Range("C40") = "Y")
処理3
Case (Range("B40") <>"Y" And Range("C40") <> "Y")
処理4
Case Else
その他
End Case
siffon9さん、おはようございます
早朝から答えてくださってありがとうございます
>(Range("B40") = "Y" And Range("C40") <> "Y")
( )で囲むのですね。これがわかりませんでした。
>Select Case True
このような書き方ができるとは全然知りませんでした
勉強になりました。これからも使えます
ありがとうございました
If ばっかりなので、Select Case が入っただけで十分見やすいです
ありがとうございました
No.3
- 回答日時:
Select Case 信号の色 <=変数
赤 処理1
青 処理2
黄 処理3
と言う風にしか書けません。「信号の色」が変数です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日 1 2023/02/10 07:50
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) 指定の条件に応じたセルの場所に〇印(図形)を描く 2 2022/11/08 15:26
- Visual Basic(VBA) ExcelVBA No.を自動連番で設定をしながらデータ入力をしたい 2 2022/08/03 18:19
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
iD
-
エクセルで、日付を入力すると...
-
メルカリのメルカードで買い物...
-
DoEventsがやはり分からない
-
switch の範囲指定
-
【Excel】特定の文字を含むセル...
-
VBAでループ内で使う変数名を可...
-
Do~Loopした回数をカウントしたい
-
EXCEL VBA マクロ 実行する度に...
-
UMLでの例外処理
-
リョウ・・・量?料?
-
VB.NET Excelを読み込んでDataT...
-
if文の処理部分の括弧を省略し...
-
エクセルVBA マクロ処理中のポ...
-
インタラクティブの反対語は?
-
VBの質問#if 0 then ってどう...
-
C言語 b += a ? 1 : 0; の意味
-
NULLを含むフィールド値の条件分岐
-
VB6,Ifから抜けるには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
メルカリのメルカードで買い物...
-
エクセルで、日付を入力すると...
-
VBAでループ内で使う変数名を可...
-
【Excel】特定の文字を含むセル...
-
EXCEL VBA マクロ 実行する度に...
-
DoEventsがやはり分からない
-
UMLでの例外処理
-
月度は何て読みますか?
-
switch の範囲指定
-
VBの質問#if 0 then ってどう...
-
セルの値が0はクリアするマクロ
-
VB.NET Excelを読み込んでDataT...
-
Do~Loopした回数をカウントしたい
-
Loadイベント中にほかのイベン...
-
Select Case文でこのようなこと...
-
findは動くがfindnextがマクロ...
-
緊急です。 知り合いから50kgの...
-
リョウ・・・量?料?
-
理不尽、行き場のないイライラ...
おすすめ情報