2024/11/21

Notes - Excel 連携:#50)グラフ調整の仕上げ

#41)グラフの調整』から開始した ”使える” グラフにするための調整作業のシリーズです。今回はいよいよ最後の仕上げ作業です。

今回設定したタイトルや軸ラベルの配置では、文字がグラフと重なって表示される可能性があります。そのような状況になっても文字が読み取りやすくなるよう、文字に縁取りを設定します。下図のタイトル(紫枠部分)を確認してください。上が対策を行った状態です。文字の周りの罫線が消えており文字が読み取りやすくなっています(かなり細かい話ですが...)。

この設定は Excel の ”光彩” という機能で実現します。


光彩の操作

光彩の設定は Font2.Glow プロパティから取得できる GlowFormat オブジェクトを使用して行います。今回は、このオブジェクトの 3 つのプロパティを使用して設定します。

Color 光彩(縁取り)の色
Transparency 縁取りの透明度を 0 ~ 1 の実数で指定(0:不透明)
Radius 光彩(縁取り)の大きさを半径で指定(ポイント)


光彩の設定

光彩の設定を行うオブジェクトは、タイトル、サブタイトル、Y 軸ラベルです。これらのテキストボックスを作成するタイミング、xCreateTextBox 関数で設定を実施します。

Function xCreateTextBox(voShape As Variant) As Variant
   Dim oText As Variant

   Set oText = voShape.Chart.Shapes.AddLabel(msoTextOrientationHorizontal, 0, 0, 1, 1)
   With oText.TextFrame2
      '垂直方向に中央揃え
      .VerticalAnchor = msoAnchorMiddle
      '色の設定
      .TextRange.Font.Fill.ForeColor.RGB = RGB(32, 32, 32)
   End With

   '光彩の設定
   With oText.TextFrame2.TextRange.Font.Glow
      .Color.RGB = RGB(255, 255, 255)
      .Transparency = 0
      .Radius = 18
   End With


   Set xCreateTextBox = oText
End Function

光彩の色は白で、透明度は 0(不透明)に設定しています。光彩は文字から離れるに従い透過するので、不透明にしておくとしっかり縁取りできます。

光彩のサイズ Radius は、フォントサイズにかかわらず 18 ポイントで統一しています。


画像化とリッチテキストでの活用

完成したグラフは『#37)名前アイコン生成 ①』で紹介した xSaveAsPicture 関数を利用すると画像として保存できます。

画像ファイルは DXL を利用するとリッチテキストに見える状態(インラインイメージ)で貼りつけることができます(詳しくは別の連載『DXL Step-by-Step』の『#41)インラインイメージの貼り付け』をご確認ください)。


これらの機能を組み合わせると、これまでノーツでは諦めていた視覚に訴えかけるレポートの作成が可能となります。ノーツの表現力が一気に増しますね。


前回 Notes - Excel 連携


0 件のコメント:

コメントを投稿