
No.2ベストアンサー
- 回答日時:
> A列で上から順番に値を入力されています。
> そういうパターンに対応できる形にしたいです。
> A列の空白以外のセルの数を取得したりするやり方はわかります。
なら Select Case でやらなくてもいいんじゃないでしょうか?
たとえば配列や Collection などを使うとか。
あとはそれをループさせ、ループの中で 1度でもヒットしたところでフラグを立ててループを脱出する。
その後にフラグの状態に合わせて処理を 2分割する。
Collection なら Add メソッドで簡単に要素を追加できるし For Each でループできる。
Dim cellValues As New Collection
cellValues.Add Item:="セルの値", Key:="キー情報"
Dim cellValue As Variant
For Each cellValue In cellValues
If hoge = cellValue Then
flag = True
Exit For
End If
Next
If flag Then
処理
Else
処理
End If
時間がなかったので、先に回答をいただいた方のやり方で、解決しました。
急ぎで解決したい表では、Select Caseで指定する値の数が、最大10個ぐらいだたのですが、値が多くなることも考えらるので、時間が出来たら教えていただいたループで試してみたいと思います。
フラグを付ける、というのは使えそうです。
本当にありがとうございました。
No.1
- 回答日時:
そのまま、
With WorkSheets("シート名")
Case .Range("A1"), .Range("A2"), .Range("A3")
End With
でいいでしょう。
あるいは、それぞれのセルの値を変数に入れてもいいでしょう。
a=.Range("A1")
b=.Range("A2")
c=.Range("A3")
Case a,b,c
とか。
この回答への補足
値の数は変動します。
A列で上から順番に値を入力されています。
そういうパターンに対応できる形にしたいです。
A列の空白以外のセルの数を取得したりするやり方はわかります。
値の数は、今のところ多くても10個ぐらいなので、okormazd様の教えてくださったやり方でうまくいきました。
一致する場合に指定した処理をする、という流れなので、値の数が少ない場合はダミーの値を入れておけばいいということを、回答を読むまで思いつきませんでした。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) いつもお世話になります 下記のコード実行すると エラーになります わかるかた教えてくれませんでしょう 6 2022/12/17 15:01
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Visual Basic(VBA) vbaでセルに入力したときに,その横にあるセルを保護し入力不可にするマクロを作りたいです。 2 2022/04/24 20:59
- Visual Basic(VBA) Vbaで数式をポーランド記法に変換するコードを作って実行しようとするとフリーズします。 1 2022/05/24 17:53
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) 【再投稿】VBAで動作しなくて困っています 2 2022/10/11 11:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA Forの使い方について...
-
[return]の役割について
-
ExcelVBA マクロの高速化について
-
バッチファイルがうまくいきま...
-
Excel-vba 文字列と変数を...
-
バブルソートとクイックソート
-
VB6.0-整数と余りを求める
-
プログラミングについて教えて...
-
動的配列の初期化
-
ExcelVBA select case 値設定
-
フォームを開くときに、コンボ...
-
円板の2点間の距離算出方法
-
inputstreamとハンドルの開放
-
エクセルVBAでのチェックボック...
-
C言語 exitの使い方
-
C言語で困っています
-
VBA教えてください!
-
論理演算をつかったインクリメ...
-
VBAでダブルコーテーション入り...
-
C言語
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 exitの使い方
-
Excel-vba 文字列と変数を...
-
フォームを開くときに、コンボ...
-
数字の位ごとの値を表示するプ...
-
VB6.0-整数と余りを求める
-
足して100になるような乱数のア...
-
ラジオボタンの値の取得につい...
-
C#で動的にコントロールを取得...
-
VBAで配列のNULL判定
-
データ構造のmapとは?
-
関数で複数の値を戻り値として...
-
世界のナベアツ
-
VBA コンボボックスの値をスピ...
-
VBAの定数の使い方で、計算値を...
-
スピンボタンで小数点
-
1つ前の値を変数に保存する方法
-
Nullってどういう意味ですか?
-
コンボボックスの名前を変数に...
-
DWORDって
-
vbaで極大値を抽出する方法
おすすめ情報