← コード一覧へ戻る
実務図形・画像

図形を選んだ画像で塗りつぶす

図形の内側が選んだ画像で塗りつぶされます。 ファイル選択をキャンセルしたときは何も追加せず終了します。

実行前に確認

  • 画像を選択するたびに練習シートを追加します。ブック構成の保護中は追加できません。
  • 画像の著作権と個人情報に注意し、公開してよい画像だけを使用してください。
  • 画像が読み込めない形式や壊れたファイルだとエラーになります。
  • 塗りつぶしでは図形に合わせて画像が変形する場合があります。
  • Excel実機での動作は未確認です。コピーした練習用ブックで試してください。

1サンプルコード

Option Explicit

Sub PracticePicture5054()
    Dim filePath As Variant
    Dim ws As Worksheet
    Dim s As Shape
    filePath = Application.GetOpenFilename("画像 (*.png;*.jpg;*.jpeg),*.png;*.jpg;*.jpeg")
    If VarType(filePath) = vbBoolean Then Exit Sub
    Set ws = ThisWorkbook.Worksheets.Add
    Set s = ws.Shapes.AddShape(msoShapeRoundedRectangle, 60, 60, 180, 90)
    s.Fill.UserPicture CStr(filePath)
End Sub

図で見る画像の読み込み

イメージ図

ファイルを選んで新しい練習シートへ追加する流れです。

  1. 選択

    PNGまたはJPEGを選ぶ。キャンセルなら終了

  2. 追加

    新しいシートへ図形または画像を作成

  3. 結果

    図形の内側が選んだ画像で塗りつぶされます。

塗りつぶしでは図形に合わせて画像が変形する場合があります。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する3つの手順で、コードの使い方を確認できます
  1. 1

    マクロ有効ブックの標準モジュールへコードを貼り付けます。

  2. 2

    PracticePicture5054を実行し、手元のPNGまたはJPEG画像を選択します。

  3. 3

    新しい練習シートで表示を確認します。図形の内側が選んだ画像で塗りつぶされます。

使っている機能の公式ドキュメント(Microsoft Learn)