今年の夏はめちゃめちゃ暑いですね。
犬のお散歩は、日が落ちてアスファルトが冷えてからいきましょう。
(肉球がやけどしちゃいますからね。)
ところで、久々の更新です・・
夏は職業柄忙しいもので・・すいません。 今回は、セルをいろいろ操作して見ます。 まず、セルA1に何か文字を入力しておいてください。 文字の色を変更する。
自動記録しすると・・・
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2001/6/18 ユーザー名 : れいぞー
'
'
Range("A1").Select
With Selection.Font
.Name = "MS Pゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
End Sub |
こうなります。
7行目
:セルA1を選択
8行目
:選択(Select)されている「Fontオブジェクト」に対して
9行目
:フォントの名前(Name)です。「MS Pゴシック」にする。
10行目
:フォントのスタイル(FontStyle)です。今回の例では標準に設定しています。
11行目
:フォントのサイズ(Size)です。11ポイントに設定。
12行目
:取り消し線(Strikethrough)です。True の場合、水平な取り消し線を付けます。
13行目
:上付き文字(Superscript)の設定。True の場合、対象となるフォントが上付き文字になります。
14行目
:下付き文字(Subscript)の設定。True の場合、対象となるフォントは下付き文字になります。
15行目
:OutlineFont プロパティは Windows
では無効なので、無視します。
16行目
:Shadow プロパティもWindows で Font
を対象にするときは、このプロパティは無効なので、無視します。
17行目
:フォントの下線(Underline)の種類をxlUnderlineStyleNoneに設定します。下の表の5種類の定数があります。
18行目
:「ColorIndexプロパティー」の値をカラー
パレットのカラー
インデックス番号の3(赤)にする。
19行目
:マクロ終了。
これも、こんな、長〜くなってますが、やはりシェイプアップすると1行で済んじゃいます・・
Range("A1").Font.ColorIndex = 3
セルの書式設定で記録しているので必要ないプロパティーまで再設定されちゃうんです。
しかし、これでフォントのほとんどの設定が可能になります。
フォントの名前
のみ変更 :Range("A1").Font.Name = "MS Pゴシック"
フォントのサイズのみ変更 :Range("A1").Font.Size=
36
というように、設定しなおしたいプロパティーだけ変更すればいいのです。
その他のプロパティーも試してみてください。 |
セルを結合する。
自動記録しすると・・・
Sub Macro2()
'
' Macro2 Macro
' マクロ記録日 : 2001/6/18 ユーザー名 : れいぞー
'
'
Range("A2:B2").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = True
End With
End Sub |
こうなります。
7行目
:セルA2からB2を選択
8行目
:選択(Select)されている「Rangeオブジェクト」に対して
10行目
:セルに入力されている内容の配置 (横位置
HorizontalAlignment) 下の表の8種類の定数があります。
11行目
:セルに入力されている内容の配置 (縦位置
VerticalAlignment) 下の表の5種類の定数があります。
12行目
:折り返し(WrapText)の設定。True の場合、セル内の文字列を列幅で折り返します。
13行目
:セルに入力されている内容の角度(Orientation)を設定します。(-90から90の値)
14行目
:True の場合、セル内での文字列の配置が均等に設定されていると、前後に余分なスペースを挿入します。
15行目
:True
の場合、使用可能な列幅に収まるように自動的に文字列を縮小します。
16行目
:Trueの場合、選択範囲のセルを結合します。(やりたかったのはこれだけです。) もう、おわかりのように、自動記録は、必要ないものがたくさん記録されてしまいます。
ですから、必要なものを探して、シェイプアップしてあげればコードもすっきり見やすくなります。
セル結合の場合も1行になります。
Range("A2:B2").MergeCells = True Underline
定数 |
意味 |
xlUnderlineStyleNone |
下線なし |
xlUnderlineStyleSingle |
1本の下線 |
xlUnderlineStyleDouble |
2本の下線 |
xlUnderlineStyleSingleAccounting |
1本の下線でセルの幅の長さの線 |
xlUnderlineStyleDoubleAccounting |
2本の下線でセルの幅の長さの線 |
HorizontalAlignment
& VerticalAlignment
定数(横位置) |
定数(縦位置) |
意味 |
xlHAlignCenter |
xlVAlignCenter |
中央揃え |
xlHAlignDistributed |
xlVAlignDistributed |
均等割り付け |
xlHAlignJustify |
xlVAlignJustify |
両端揃え |
xlHAlignLeft |
|
左詰め(インデント) |
xlHAlignRight |
|
右詰め |
xlHAlignCenterAcrossSelection |
|
選択範囲内で中央 |
xlHAlignFill |
|
繰り返し |
xlHAlignGeneral |
|
標準 |
|
xlVAlignBottom |
下詰め |
|
xlVAlignTop |
上詰め |
今回は前回に引き続きセルを操作してみました。
セルをいじくっているうちにシェイプアップもやってしまいました。
大体、ほとんどの機能は、自動記録で再現できます。いろいろ試してみてください。
次回は自動記録ではできない「VBAらしい」ことをやってみたいと思います。
|