• ベストアンサー

黒い文字のみの最大および最小値のカウントについて

何度も失礼します。 再びVBAについて、質問させていただきます。 エクセル2010を使用しています。 今回は黒文字のみ(文字色1)の数値で最大値と最小値の抽出を したのですが、どのようにしたらよいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

計算の中身を変えるだけです,と言いたいところですがもうちょっと細工が要ります。 public function MAXblack(byval target as excel.range) as double  dim h as range  dim res as double, N as long  application.volatile  for each h in target   if h <> "" and isnumeric(h) and h.font.color = rgb(0,0,0) then    if n = 0 then     res = h.value    else     res = application.max(res, h.value)    end if    n = n + 1   end if  next  maxblack = res end function public function MINblack(byval target as excel.range) as double  dim h as range  dim res as double, N as long  application.volatile  for each h in target   if h <> "" and isnumeric(h) and h.font.color = rgb(0,0,0) then    if n = 0 then     res = h.value    else     res = application.min(res, h.value)    end if    n = n + 1   end if  next  minblack = res end function

imaimaimagin
質問者

お礼

自己解決しました!! いつも助かります!!本当にありがとうございました。

imaimaimagin
質問者

補足

いつもありがとうございます!! さっそく入力してみたのですが、#VALUE!とでてしまいました。 このファイルに他2つのVBAを組んでいるのが問題でしょうか?

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一案です。 動的配列に検証範囲内を「黒文字且つ数値」を条件にデータをスタック、範囲終了後に同配列からMax/Min関数(ワークシート関数)で取出しては如何でしょうか。

imaimaimagin
質問者

お礼

ありがとうございます!ちょっとやってみますね!

関連するQ&A