|
さらに調子に乗って…
ジャンプを記録すると
Selection.SpecialCells(xlCellTypeFormulas, 23).Select
などのように記録されますが
「なんで23が、xlNumbers + xlTextValues + xlLogical + xlErrorsとなるの?」
「どこにそんなこと書いてあるの?」
というあたりの話を。
記録されたマクロの「SpecialCells」の辺りへカーソルを持って行きF1を押すと、
ヘルプの画面が表示されます。
その中に灰色の行で
expression.SpecialCells(Type, Value)
と書いてあり、括弧の中の順番から
Selection.SpecialCells(xlCellTypeFormulas, 23).Selectの
「xlCellTypeFormulas」が「Type」に、
「23」が「Value」に相当するんだなと推測が付きます。
そしてヘルプ画面の
「Value 省略可能です。〜〜〜XlSpecialCellsValues クラスの定数を使用します。」の
「XlSpecialCellsValues」が青くなっているのでなんとなくクリックしてみると、
使用できる定数は、次に示す XlSpecialCellsValue クラスのいずれかです。
xlErrors
xlLogical
xlNumbers
xlTextValues
という記述があらわれます。
このことから23と書く代わりに上の4つを書いても良いのだと知ることができます。
次に、マクロの画面でF2を押すと見慣れない画面が現れます。
(画面右上の「×」の下の「×」を押すといつもの画面に戻ります。)
その画面の上の方に
「<すべてのライブラリ>」「▼」
「 」「▼」
とあるので下の枠(双眼鏡ボタンの左の枠ですね)
に上に書いてあった「xlErrors」と書いて双眼鏡ボタンを押します。
すると画面に先程の
xlErrors
xlLogical
xlNumbers
xlTextValues
これらが現れ、下の方に
Const xlErrors = 16 (&H10)
Excel.XlSpecialCellsValue のメンバ
と書いたあるかと思います。
その記述から xlErrors = 16 である事を知ることができます。
ちなみに
Const xlErrors = 16 (&H10)
などと書いてあると「なんじゃこりゃ?」という感じかも知れませんが、
何のことは無い
Sub あいうえお()
Const my定数 = 16
End Sub
というのと一緒で単に16という数字を定数に持たせてあるだけのことです。
なので
MsgBox xlErrors
とすれば16と表示されますし、
ActiveCell.Interior.ColorIndex = xlErrors
とすれば16番目の色が着きます。
ではでは。
|
|