
No.5ベストアンサー
- 回答日時:
申し訳ありません
記述方法間違えていました
filter(flag,"false",true,vbtextcompare)
上記が正しいfilterの記述です。
これをuboundで囲って下さい
No.4
- 回答日時:
No.3です
書き忘れてしまいましたが、前述した方法はvbaでは実装できません。
(indexofが無いので…)
代替案としてブール型に拘らないのであれば以下のような手法もあります。
Dim flag(4) as string ‘型を文字列に変更
if ubound(filter(flag,”false”,vbtextcompare))<0 then
end if
前述したものと概ね同じ様な判定で、
第1引数に入れた配列から第2引数を含む要素を配列で返し、その要素数をuboundでカウントします。
これも要素がなければ-1です。
filterの第3引数は大文字/小文字を区別しない為のものです。
以上ご参考まで
No.3
- 回答日時:
配列化されているのでindexofを使って見ては如何でしょうか。
例: if array.indexof(frag,false)<0 then
indexofは第1引数に含まれる最初の第2引数の位置を返り値とする関数で、第2引数が含まれない場合は-1を返します。
以上ご参考まで

No.2
- 回答日時:
そのような判定機会が多い場合、私なら専用の判定ルーチンを作ります。
以下は、全ての要素がtrueならtrueを返す判定ルーチン(AllTrue)です。
flag1,flag3は全てtrueです。
flag2が一部falseです。
判定ルーチンは呼び出し側の要素数がいくつでも対応可能です。
ーーーーーーーーーーーーーーーーーーーーーーー
Option Explicit
Sub Macro1()
Dim flag1(4) As Boolean
Dim flag2(3) As Boolean
Dim flag3(2) As Boolean
flag1(0) = True
flag1(1) = True
flag1(2) = True
flag1(3) = True
flag1(4) = True
flag2(0) = True
flag2(1) = True
flag2(2) = False
flag2(3) = True
flag3(0) = True
flag3(1) = True
flag3(2) = True
Debug.Print AllTrue(flag1)
Debug.Print AllTrue(flag2)
Debug.Print AllTrue(flag3)
End Sub
Private Function AllTrue(ByRef ArrayFlag() As Boolean) As Boolean
Dim i As Long
AllTrue = False
For i = 0 To UBound(ArrayFlag)
If ArrayFlag(i) = False Then Exit Function
Next
AllTrue = True
End Function
---------------------
実行結果
True
False
True

No.1
- 回答日時:
調べる数がうんと多ければループにするんでしょうが、中途半端な個数だとそれもちょっとですよね。
多少なりとも簡単に書くなら、= True を省略することじゃないですか?
If flag(0) And flag(1) And ...
みたいにです。Boolean型の変数は、それ自体がTrue/Falseの値を持っているので、True判定がしたければ= Trueは書かなくても一緒です。値として展開すれば、True=Trueって書いてあるのと同じことですからね。True=Trueの評価結果はTrueなので、True一個あれば事足りるわけです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) excel VBA if文について 3 2022/03/27 17:42
- Visual Basic(VBA) ExcelVBAでDo Until loopのネスト、IF文を使って一致する物と一致しない物としたい 11 2022/12/24 17:46
- その他(プログラミング・Web制作) pythonのDjangoでHTML内で変数を利用したいです 3 2022/05/15 15:33
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/07/13 12:31
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのautofilter、criteriaの配...
-
文字の整列(printf)
-
二次元配列のインデックスについて
-
二次元配列における要素数のは...
-
HTML::Parserの解析結果
-
リストボックスに縦スクロール...
-
配列の重複削除について
-
Strawberry Perl for Windows ...
-
perlで配列の要素が空なのを知...
-
不特定数存在する特定文字直後...
-
複数の配列の全ての組み合わせ...
-
画面を強制的に再描画させる方法
-
CSVファイルの特定の行だけを読...
-
vb.netです。2次元配列の要素を...
-
VBAでの一時停止と再開の方法
-
VBのReturnの使い方
-
UWSCの終了の仕方
-
Escキーを押すと、中断する時と...
-
エクセルの当番表を作っていま...
-
流れ図(フローチャート)が分か...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAでTransposeの不思議
-
VBAのautofilter、criteriaの配...
-
マクロ Publicでの配列定義
-
Excel VBA ユーザーフォームの...
-
チェックボックスのperlでの値...
-
リストボックスに縦スクロール...
-
Strawberry Perl for Windows ...
-
クラスに配列を渡す方法
-
二次元配列のインデックスについて
-
二次元配列における要素数のは...
-
文字の整列(printf)
-
Dim flag(4) as boolean で配列...
-
perl 配列の要素数について
-
複数の配列の全ての組み合わせ...
-
バイナリデータの検索(VB.NET2008)
-
perlで配列の要素が空なのを知...
-
可変長配列を、動的確保した固...
-
perl このテキストファイルを簡...
-
VBScript 配列
-
VB6で配列の最大値を簡単に求め...
おすすめ情報