SSブログ

ユーザー定義関数をアドインにする 実験 Excl2000 VBA [Excel2000 VBA独習]

ユーザー定義関数をアドインにする 実験 Excl2000 VBA

excelVBA_BGcolorCount.jpg

範囲の背景色が有るセルの個数を調べるマクロ「関数名 BGColorCount(範囲) 」

Function BGcolorCount(celR As Range)
 Dim myR As Range
 Dim x As Long
  x = 0
    For Each myR In celR
    '背景色が白でなければカウントを+1
          If myR.Interior.Color <> RGB(255, 255, 255) Then x = x + 1
    Next myR
  BGColorCount = x
End Function

アドイン化(アドイン化するメリット、全てのブックで使用できる)
上記のマクロをブックに追加する
「名前を付けて保存」でファイルの種類で拡張子xlaを選択し、名前を付けて保存する。(例 背景色カウント.xla)

アドインとして追加
メニューバーのツール→アドインを選択し、アドインダイアログが表示されたら、右側の「参照」参照ボタンを押し先ほど保存した***.xlaを選択して追加する。

Excelで利用するには、BGcolorCount(A1:A10) のようにセルに記入する。(A1からA10)の範囲の背景色のあるセルの個数を計算する。


ユーザー定義関数は自動で計算しないので、再計算する必要がある(Ctrl+Alt+F9)や下記のマクロを実行する。

ユーザ定義関数(アドイン)を再計算するマクロ(ブック全体)
Sub 再計算()
    Application.CalculateFull
End Sub

ユーザ定義関数(アドイン)を再計算するマクロ(シートだけ))
Sub 再計算()
    Application.Calculate
End Sub
ワークシートイベントとして下記のマクロをシートに追加すれば、自動計算風になるかも
(セルの選択を替えた時に再計算を実行する)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Application.CalculateFull
End Sub
 

タグ:Excel2000 VBA
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。