2016-07-22 4 views
0

私はSUMIF文でたくさん働いていますが、今日は基本的に作成し、EXACTIF機能が必要です。Excelがフィルタリングされた範囲に機能を適用

AND(EXACT(FUNCT(A1:A10,B1:B10)))AND(EXACT({A1,A2,A5,A7,A10}))に設定するか、または他のプログラミング言語にFUNCTIF(EXACT,A1:A10,B1:B10)のようなものがあります。私はVBAを使う必要はありません。

 A  B 
1 Hello TRUE 
2 Hello TRUE 
3 Bye FALSE 
4 Bye FALSE 
5 Hello TRUE 
6 Hello FALSE 
7 Bye TRUE 
8 Bye FALSE 
9 Bye FALSE 
10 Hello TRUE 
+0

'EXACT({A1、A2、A5、A7、A10})の結果でなければなりませんか?あなたが達成しようとしていることを私にはっきりさせない。 –

+0

私はこれが正しいかどうかを見てみましょう。 BのTRUEとマークされたAのすべての値が同じ値であるかどうかをテストしますか? –

+0

@ScottCranerはい、私は1つ見逃していました。そして、私は今編集するコードの周りの機能を持っています。 – Aruthawolf

答えて

1

この式は、あなたが望むものを複製します:

=COUNTIFS(B:B,TRUE,A:A,INDEX(A:A,MATCH(TRUE,B:B,0))) = COUNTIF(B:B,TRUE) 

Aの値がBが真であり、BはTRUE等しいAの最初の値に等しい場合には、カウントします。

そして、それは

列BにTRUEsのカウントにこれを比較し、それらが等しい場合、すべての値が同じであり、TRUEが返されます。カウントが異なる場合は、FALSEを返します。

enter image description here

+0

答えをありがとう、私はロジックに従うと思います。上記のタイプIのロジックが存在しない場合は、正解とします。たとえば、SUBTOTALは、表示された値を選択するだけの良い方法で動作します。そのため、A1:A10 - > {A1、A2、A5、A7、A10}はコーディング内で変換しますが、他のハードコーディングされていない関数を指定することはできません。 – Aruthawolf

+0

@Aruthawolfこれは正しいですが、2つの文字列を配列ではなく複数の文字列で比較するため、EXACT()で配列を使用することはできません。厳密に欲しいのは、2つの基準のみで 'EXACT(A1、A2、A5)'を使うことはできません。また、EXACT(A1:A2)は2つの基準を必要とするため動作しません。 SUBTOTALでも配列型の公式については非常に厄介であり、配列を満たすにはOFFSETまたはINDIRECTが必要です。 –

関連する問題