|
▼ichinose さん、こんにちは。わざわざありがとうございます。
ichinose さんの案の中身についてですが、自分でも調べましたが
何点か解決できなかったので、お手数ですが、ご教授をお願い致します。
なお、前回のIROCさんとのやりとりはご存知かと思いますが、
まだ初心者であり、失礼でおバカな質問だとは思いますが、どうか
宜しくお願い致します。恐らく、私自身、VBAより関数を先に
勉強したほうがいいのかも知れませんが。
1.まず、以下の文ついてですが、これは書式のことだと理解していますが
どのようなことを想定して入れたのでしょうか?なければないで
良いものなのでしょうか?
.NumberFormatLocal = "G/標準"
2.次の配列数式について、カウントを求める数式だと思うのですが、
IS関数である「ISERROR」とは、私が調べた解釈だと、
エラー値を検索するときに使用すると
理解していたのですが、これは、どのように解釈すればいいのでしょうか?
また、最後の部分の「,0,1)」が、これも調べたのですが、
ヘルプには載っていなくて分かりませんでした。
さらに、カウント数を求めるのに、何故、「SUM」なのでしょうか?
.FormulaArray = "=SUM(IF(ISERROR(FIND(1,A1:A" & _
rw & ")),0,1))"
>これが、A1〜A20の中で「1」という文字を含む数値と解釈すれば・・・、
>答えは、件数では、A1とA10〜a19の11件
>合計の答えは、146となりますよね?
>
>上記の解を求めたいなら、配列数式を使いますが、VBAで記述すると、
>'=============================================================
>Sub test()
> Dim rw As Long
> rw = Range("a" & Rows.Count).End(xlUp).row
> With Range("a" & rw + 1)
> .NumberFormatLocal = "G/標準"
> .FormulaArray = "=SUM(IF(ISERROR(FIND(1,A1:A" & _
> rw & ")),0,1))"
> End With
> With Range("a" & rw + 2)
> .NumberFormatLocal = "G/標準"
> .FormulaArray = "=SUM(IF(ISERROR(FIND(1,A1:A" & rw & _
> ")),0,A1:A" & rw & "))"
> End With
>End Sub
|
|