0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【EXCEL】QRコードを表示する

0
Last updated at Posted at 2026-04-21

やること

ExcelでQRコードを表示するメモ。

事前確認:Qiitaでの記事

 ということで、以下の検索をしたところ、220件ヒットした。(2026/04/21時点)
「EXCEL QR」の検索結果 - Qiita

 この中から、適当に以下紹介。

Microsoft Access Barcode Control 16.0

ExcelでQRコード作成 #Excel - Qiita
最終更新日 2025年02月12日 投稿日 2025年02月11日

ActiveXオブジェクトは2025年4月から作成できなくなるようです。
こちらの作成法は使用できなくなるとのことで、ご注意ください。

Microsoft Access Barcode Control は使わないほうが良い #VBA - Qiita
最終更新日 2020年02月20日 投稿日 2020年02月20日

別の ActiveX

QR コード サンプル集 #QRコード - Qiita
投稿日 2021年03月29日

Python in Excel

【小ネタ】Python in Excelで4行でQRコードを作成する #QRcode - Qiita
投稿日 2024年10月09日

VBA

EXCELのVBAだけでQRコードを作成する(サンプルのエクセルファイルあり)。 #ExcelVBA - Qiita
最終更新日 2020年11月21日 投稿日 2019年11月21日

EXCELのVBAだけでQRコード。一部修正して日本語(全角)でも作成可能に。サンプルのエクセルファイルあり。 #ExcelVBA - Qiita
最終更新日 2020年11月21日 投稿日 2019年03月17日

QRコードにしてクリップボードに格納するExcelマクロ #VBA - Qiita
最終更新日 2020年02月08日 投稿日 2020年01月16日

Excelに入力したURLをQRコードに変換してセルに貼り付け #ExcelVBA - Qiita
最終更新日 2019年05月27日 投稿日 2017年02月01日

web技術(webサービス、JavaScript、qrcode.jsなど)

二次元コード・QRコードをExcelまたはスプレッドシートで作成 #QRcode - Qiita
投稿日 2023年12月11日

Excel VBAのActiveXコントロールからWebツールへ。ブラウザ完結型QRコード一括生成の実装 #JavaScript - Qiita
投稿日 2026年01月18日

これまではExcel VBAでActiveXコントロールを利用したり、外部のAPIを叩いて生成する手法が一般的でした。

これらを解決するために、**外部サーバーへ一切データを送らず、ブラウザのメモリ上だけで完結する「QRコード一括生成・ラベル印刷ツール」**を開発しました。実装時に工夫した、業務ツールとしての実用ポイントを解説します。

C#で生成

C#でQRコードを生成し、PDF・Word・Excelに挿入する方法 #.NET - Qiita
投稿日 2025年06月27日

Pythonで生成

Excelちゃんが黒魔術でQRコードさんを召喚してみた #Python - Qiita
投稿日 2020年07月17日

Python OpenCVを使ってマークシートの読み取り作成(うまく読み取りするコツ) #Python - Qiita
投稿日 2020年09月07日

関数のみ

エクセルの、ワークシート関数のみでQRコードを作成する #Excel - Qiita
最終更新日 2020年11月21日 投稿日 2020年10月25日

その他(QRコードの作成方法のない、読み物を含む)

EXCELなし

VB.netでのQRコード作成 #入門 - Qiita
最終更新日 2025年10月01日 投稿日 2025年09月29日

対象読者

  • Microsoft Excel の ActiveXが有効化できず、Microsoft BarCode Control 16.0 が使えないので、QRコードを作れない
  • QR コードを外部サービスなどを利用せず作成したい
  • VB.net の学習

1ファイルのHTML(+JavaScript)で、QRcodeを生成する #QRコード - Qiita
最終更新日 2020年12月19日 投稿日 2020年11月21日

webサービス

QRコードの効果測定(QRコード→Web編) #GoogleAnalytics - Qiita
最終更新日 2020年12月18日 投稿日 2020年12月18日

というわけで、印刷物に貼ったQRコードのアクセス解析をする方法をまとめました。

Automation 360 - RPA業務自動化ソリューション

Automation Anywhere A360でQRコードを生成してみる #RPA - Qiita
最終更新日 2021年10月05日 投稿日 2020年09月13日

kintone

製造業の部品管理をExcelからQRコード+kintoneに変えたら年間202時間削減できた話 #JavaScript - Qiita
投稿日 2026年02月10日

LINE WORKS

LINE WORKS で 外部連携用のQRコード を一括生成(ほぼコピペ) #LINEWORKS - Qiita
最終更新日 2023年12月04日 投稿日 2023年12月04日

おまけ

【小ネタ】Python in Excelで4行でQRコードを作成する #QRcode - Qiita
 下記のような感じ。
image.png
 簡単でよい。しいて言えば、セルにイメージで出しにくいかも。
上記はカードを表示を使用。
image.png
image.png
 セルの上にプロットを表示 や 参照の作成。
image.png

 base64で表示してそれを表示する案もありそうだが、ここまでスマートにできなかった:sweat_smile:

追記

 qr.show() は Excel セル内表示ではなく、別ウィンドウ(画像ビューア)表示ですが、以下のようなVBAですこしは作業が楽になるかと。

PlacePictures_B_to_C
Sub PlacePictures_B_to_C()
    '------------------------------------------------------------
    ' B1~B10 に py関数で生成されたQRコード画像が貼られている前提
    ' その画像を PlacePictureOverCells を使って C1~C10 に配置する
    '------------------------------------------------------------

    Dim ws As Worksheet
    Dim i As Long
    Dim srcCell As Range
    Dim dstCell As Range
    Dim pic As Shape
    Dim shpCountBefore As Long

    Set ws = ActiveSheet

    For i = 1 To 10

        ' 元セル(B列)
        Set srcCell = ws.Range("B" & i)

        ' 配置先セル(C列)
        Set dstCell = ws.Range("C" & i)

        '--------------------------------------------------------
        ' 画像追加前の Shape 数を記録
        '--------------------------------------------------------
        shpCountBefore = ws.Shapes.Count

        '--------------------------------------------------------
        ' B列セルにある画像をセルに合わせて配置(AsReference=True)
        '--------------------------------------------------------
        srcCell.PlacePictureOverCells AsReference:=True

        '--------------------------------------------------------
        ' 追加された画像(直後の Shape)を取得
        '--------------------------------------------------------
        If ws.Shapes.Count > shpCountBefore Then
            Set pic = ws.Shapes(ws.Shapes.Count)
        Else
            MsgBox "画像の取得に失敗しました(行 " & i & ")"
            Exit Sub
        End If

        '--------------------------------------------------------
        ' 画像を C列セル位置へ移動・リサイズ
        '--------------------------------------------------------
        With pic
            .Top = dstCell.Top
            .Left = dstCell.Left
            .Width = dstCell.Width
            .Height = dstCell.Height
            .Placement = xlMoveAndSize
        End With

    Next i

End Sub

image.png

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?