小さい会社の1人SEの開発記というか奮戦記

  1. Excel
  2. 2388 view

文字と背景の色を設定する【Excel VBA】

エクセルで業務に使う表をデータベースから抽出する時、繰り返していて見づらいんだけどフィルタをかけたいからデータを入れている場合がありますよね。私はそういう時文字と背景を同一色にすることで逃げています。今回は色の設定についてまとめます。

サンプル

カラーサンプル.xlsx

エクセルのカラーサンプルです。これを見た方が一目瞭然かもしれません。

やりたいこと

今回やりたい事はかなりシンプルです。

  1. セルを指定する。
  2. 文字色を指定する。
  3. 背景色を指定する。

だけです。文字の色を「白」にするのが私の中では一番良く使う方法ですね。

セルの指定は RangeかCellsを使います。詳しくは「ExcelのVBAで基本になるRangeとCellsの考え方」を参照願います。

Font.ColorIndex で文字色を指定する

Fontで文字色を指定するのは以下のようになります。

Range(“セル名”).Font.ColorIndex = 色のインデックス番号
Cells(Y, X).Font.ColorIndex = 色のインデックス番号

Interior.ColorIndex で背景色を指定する

Interiorで背景色を指定するのは以下のようになります。

Range(“セル名”).Interior.ColorIndex = 色のインデックス番号
Cells(Y, X).Interior.ColorIndex = 色のインデックス番号

ColorIndex 指定できる色

白背景色に1~56の番号で実際に文字色を変えてみました。ColorIndex=2は白なのでここだけ背景色を黒に変更しています。

For i = 1 To 56
    i1 = Int(i / 4) + 1
    i2 = i Mod 4
    If i2 = 0 Then
        i1 = i1 - 1
        i2 = 4
    End If
    With Cells(i1, i2)
        .Value = "ColorIndex = " & i
        .Font.ColorIndex = i
    End With
    Cells(1, 2).Interior.ColorIndex = 1
Next

この様な処理結果になります。

まとめ

エクセルをアプリ的に使い始めると「色使い」は気になってくるものです。シンプルに色が変えられますので ColorIndex を覚えておきましょう。

 

Excelの最近記事

  1. 日本語をエンコードする【Excel VBA】

  2. 商品コードなど長い数値だけの文字列を指数表示させない【Excel VBA】

  3. VBAで改行を指定する【Excel】

  4. 入力規則のプルダウン連携【Excel】

  5. 最短手順で計算式を保護する【Excel】

関連記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


お薦め書籍

最近の記事

  1. Access

    Accessの数値型ではまる・・・。
  2. Excel

    日本語をエンコードする【Excel VBA】
  3. Access

    クエリで日付から曜日を算出する。【Access】
  4. PCパーツ

    ASUS AMD Ryzen 4000 シリーズ搭載小型ベア…
  5. Microsoft365

    コンデジをTeamsのWebカメラに使う
  6. SQL Server

    SQL文で今日から7日前までを指定する