メインコンテンツへスキップ

Excelでテキストを対応する画像に置き換えるにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-08-06
replace text with corresponding pictures

実際の業務では、特定のセル内のテキストに基づいてExcelに自動的に対応する画像を表示したい場合があります(例:商品名に基づいて商品画像を表示したり、ステータスに基づいて対応するアイコンを表示したりするなど)。Excel自体には「テキストから画像」への変換機能が組み込まれていないため、この目的を達成するにはいくつかの技術が必要です。以下では、この記事では主な2つの解決策とその最適化方法について詳しく説明します。

VBAコードを使用してテキストを対応する画像に置き換える

Kutools for Excelを使用してテキストを対応する画像に置き換える


VBAコードを使用してテキストを対応する画像に置き換える

通常、Excelでテキスト文字列に基づいて関連する画像を挿入するのは簡単ではありませんが、次のVBAコードを使用することでテキストを対応する画像に置き換えることができます。

1. 「Alt + F11」キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。

2. ウィンドウで、「挿入」>「モジュール」をクリックして新しいモジュールウィンドウを開き、以下のVBAコードをコピーしてモジュールウィンドウに貼り付けます。

VBAコード: テキストを対応する画像に置き換える

Sub ReplaceTextWithPictures()
'Updateby Extendoffice
    Dim ws As Worksheet
    Dim selectedRange As Range
    Dim cell As Range
    Dim pic As Picture
    Dim picPath As String
    Dim foundPic As Boolean
    Dim fileExtensions As Variant
    Dim ext As Variant
    Const imageFolderPath As String = "C:\Users\skyyang\Desktop\Animal\"
    fileExtensions = Array("png", "jpg", "jpeg", "bmp", "gif")
    On Error Resume Next
    Set selectedRange = Application.InputBox("Select the data range", "KutoolsforExcel", Type:=8)
    On Error GoTo 0
    If selectedRange Is Nothing Then
        MsgBox "No valid cell range selected, operation cancelled.", vbExclamation
        Exit Sub
    End If
    Set ws = selectedRange.Worksheet
    For Each cell In selectedRange
        If Not IsEmpty(cell.Value) Then
            foundPic = False
            For Each ext In fileExtensions
                picPath = imageFolderPath & cell.Value & "." & ext
                If Dir(picPath) <> "" Then
                    foundPic = True
                    Exit For
                End If
            Next ext
            If foundPic Then
                For Each pic In ws.Pictures
                    If pic.TopLeftCell.Address = cell.Address Then pic.Delete
                Next pic
                Set pic = ws.Pictures.Insert(picPath)
                With pic
                    .Top = cell.Top
                    .Left = cell.Left
                    .Width = cell.Width
                    .Height = cell.Height
                End With
            End If
        End If
    Next cell
End Sub

3. 次にF5キーを押してこのコードを実行し、ポップアップダイアログで対応する画像を挿入したいデータ範囲を選択します。スクリーンショットをご覧ください:

 VBA code dialog box to select a range for text-to-image replacement

4. そして「OK」ボタンをクリックすると、すべての対応する画像が元のテキストを置き換えます。スクリーンショットをご覧ください:

 VBA code to replace text with corresponding pictures

:上記のコードでは、画像のフォルダパスを必要に応じて変更する必要があります。このスクリプト内で次のように指定します:Const imageFolderPath As String = "C:\Users\skyyang\Desktop\Animal\"

Kutools for Excelを使用してテキストを対応する画像に置き換える

VBAコードに慣れていない、または使用したくない場合は、Kutools for Excelをお試しください。これは強力で効率的なソリューションを提供し、数回のクリックで簡単にテキストを対応する画像に置き換えることができます。Kutoolsを使用すると、特定のテキストを事前に設定された画像と直接マッチングさせることができ、コードを書く必要はありません。さらに、画像のサイズを必要に応じて調整できるため、Excelシート内での配置に柔軟性を持たせることができます。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

Kutools for Excelをインストール後、次の手順を行ってください:

1. 「Kutools Plus」>「インポート & エクスポート」>「画像のマッチングインポート」をクリックします。スクリーンショットをご覧ください:

2. 「画像のマッチングインポート」ダイアログボックスで、次のようにオプションを設定してください:

  • 「マッチ範囲」テキストボックスから、画像と一致させるセル範囲を選択してください;
  • 次に、「追加」ボタンをクリックしてインポートしたい画像ファイルを選択します;
  • インポートサイズのドロップダウンから挿入する画像のサイズを指定します(ここでは、「画像サイズに合わせる」「セルサイズに合わせる」「画像サイズを指定する」のいずれかを選択できます);
  • 画像のインポート順序を選択します;
  • 最後に、「インポート」ボタンをクリックします。
    set specific options in the dialog box

3. そして、ポップアップした「画像のマッチングインポート」ダイアログから、関連する画像を配置するセルを選択します(テキストの元のセルを選択することもできます)。スクリーンショットをご覧ください:

A screenshot showing the selection of a cell for inserting corresponding pictures

4. そして「OK」ボタンをクリックすると、テキストに対応するすべての画像がワークシートに挿入されます。スクリーンショットをご覧ください:

A screenshot showing images inserted into the cells in Excel after using Kutools

注意:
  1. テキストに対応する画像がない場合、セルには何も挿入されません。
  2. 画像を水平方向に挿入したい場合は、「インポート順序」セクションで「行ごとに塗りつぶしてから列ごとに塗りつぶす」をチェックしてください。

Excelでは、VBAコードやKutools for Excelツールを使用してテキストを対応する画像に置き換えることで、作業効率とデータの視覚化を大幅に向上させることができます。VBAスクリプトを書く方法でも、Kutoolsプラグインを使用する方法でも、どちらもユーザーが迅速にテキストから画像への置き換えを実現でき、異なる作業ニーズに対応できます。適切な方法を選ぶことで、データ処理をより効率的かつ直感的にし、全体的な作業品質を向上させることができます。さらにExcelのヒントやコツを探求したい場合は、当社のウェブサイトには数千のチュートリアルがあり、Excelをマスターするお手伝いをします

最高のオフィス生産性ツール

🤖 Kutools AI Aide:データ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析してグラフを生成  |  Kutools Functions を呼び出す
人気機能重複の検索・ハイライト・マーキング   |  空白行を削除   |  データを失わず列やセルを統合   |   丸める ...
スーパーLOOKUP複数条件VLOOKUP   複数値VLOOKUP  |  複数シートの検索  |  ファジーマッチ ....
高度なドロップダウンリストすばやくドロップダウンリストを作成   |  依存型ドロップダウンリスト   |  複数選択ドロップダウンリスト ....
列の管理:特定数の列を追加  | 列を移動  | 非表示列の表示状態を切り替え |  範囲と列の比較 ...
注目機能グリッドフォーカス   |  デザインビュー  |  強化された数式バー   ワークブック&ワークシートの管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リスト送信で電子メールを送信   |  スーパーフィルター   |   特殊フィルタ(太字/斜体/取り消し線でフィルタ...)
トップ15ツールセット12 種類のテキストツールテキストの追加特定の文字を削除など)  |  50 種以上のグラフ タイプガントチャートなど)  |  40を超える実用的な 数式誕生日に基づいて年齢を計算する、など)  |  19種の 挿入ツールQRコードの挿入パスから画像の挿入など)  |  12種類の 変換ツール単語に変換する通貨変換など)  |  7つの 結合&分割ツール高度な行のマージセルの分割など)  |  ...さらに多数
お好きな言語でKutoolsを使用できます ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上に対応!

Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...


Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます

  • Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
  • 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
  • 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!