ExcelのIMAGE関数で簡単QRコード生成!Python連携でさらに業務効率化する方法

エクセル

ExcelでQRコードを作りたいけど、どうやればいいんだろう…

IMAGE関数って聞いたことはあるけど、使い方がよくわからない…

そんなお悩みを持つ方に、本記事では以下の内容をご紹介します!

・ExcelのIMAGE関数でQRコードを簡単に生成する方法
・複数のQRコードを一括作成する効率的なテクニック
・PythonやAPIを活用した高度な自動化の実現方法

IMAGE関数を使えば、専用ソフトやツールを使わずとも、ExcelだけでキレイなQRコード生成が可能です。

私も苦労して30分かかっていたQRコード作成作業でしたが、わずか5分で完了できるようになりました。

ぜひ最後までお読みいただき、あなたの業務効率化にお役立てください!

【実践ガイド】ExcelでQRコード作成!IMAGE関数で簡単実装

【実践ガイド】ExcelでQRコード作成!IMAGE関数で簡単実装

基本の仕組み:QRコードとIMAGE関数の連携とは?

QRコードは、情報を簡単に読み取るための便利なツールです

例えば、お店の情報やウェブサイトのリンクをスマホでパッと見ることができたり、決済や認証に使われることもあり、その利用の幅はますます広がっています。

ExcelではIMAGE関数と外部のサービスを使うことで簡単にQRコードを作ることができますが、Microsoft 365の最新バージョンでのみ利用可能なのでご注意を。

この方法を使えば、難しいツールを使わなくてもすぐにQRコードを表示できるため、特に仕事での素早い情報共有に役立ちます。

実践!IMAGE関数でQRコード生成の超簡単4ステップ

QRコードをExcel上で生成するための準備作業と設定手順を説明します

QRコード作成手順
  • ExcelのバージョンがIMAGE関数をサポートしているか確認

    IMAGE関数は比較的新しい機能であり、バージョンが違うと使えません。

    「サブスクリプション版」「買い切り版」の違いでもサポートされているかが変わるため、ご注意を。

  • インターネットに接続されていることを確認

    QRコードを生成するためには、外部のAPIを使用する必要があります。

    企業のネットワーク環境では、セキュリティ上の理由で外部へのアクセスが制限されていることもあるため、まずは確認してください。

  • QRコードを生成するための数式
    Power Query
    =IMAGE("https://api.qrserver.com/v1/create-qr-code/?data=" & ENCODEURL(A1))

    この数式は、セルA1に入力された内容をQRコードとしてエンコードし、生成された画像をExcelのシート上に表示します。

    セルA1に入力された内容をQRコードとしてエンコード
    生成された画像をExcelのシート上に表示
  • QRコードのサイズを変更したい場合

    パラメーターを編集してサイズを指定することができます。

    Power Query
    =IMAGE("https://api.qrserver.com/v1/create-qr-code/?data=" & ENCODEURL(A1) & "&size=200x200")

    ?size=200x200」のようにサイズを追加することで、表示されるQRコードの大きさをカスタマイズできます。

【活用術】QRコードを効率的に作成するテクニック

【活用術】QRコードを効率的に作成するテクニック

スプレッドシートのみ使える高品質なQRコード生成法

スプレッドシートでは、Google Chart APIを使うことでQRコードを生成できます

Power Query
=IMAGE("https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=" & ENCODEURL(A1))

この数式を使うことで、サイズを自由に指定でき、Excelに直接高品質なQRコードを生成することができます

ただし、Google Chart APIは利用制限があり、将来的に廃止される可能性もあるため、注意しましょう。

また、スプレッドシートなら作成したQRコードを簡単に保存することが可能です

作成方法はこれまでの解説通りですが、スプレッドシートならウェブページ(.html)形式でダウンロードし、解凍後のフォルダ内の画像ファイルを利用することができます。

スプレッドシートの特性を活かし、生成されたQRコードを一括でダウンロードできるため、多数のデータを持つ業務で特に便利ですね!

複数QRコードの一括生成テクニック

大量のデータから一括でQRコードを作らないといけない…

は、ExcelのVBA(Visual Basic for Applications)を使ってマクロを作成するのが有効です。

マクロを使えば複数のセルの内容を一気にQRコード化することが可能に。

VB
Sub GenerateQRCodes()

    Dim cell As Range
    
    For Each cell In Selection
        cell.Offset(0, 1).Formula = "=IMAGE(""https://api.qrserver.com/v1/create-qr-code/?data="" & ENCODEURL(" & cell.Address & "))"
    Next cell
    
End Sub

このコードを使用することで、選択した範囲の右側に一括でQRコードを作成することができます

Power Query
=IMAGE("https://api.qrserver.com/v1/create-qr-code/?data=" & ENCODEURL(A1))

↑これを一括設定するという内容ですね!

マクロの設定と使用方法
  • 開発タブを出す

    「ファイル」→「オプション」→「リボンのユーザー設定」→「コマンドの選択」からメインタブを選択→「開発」を選択→「追加」を押す→OK

    「ファイル」→「オプション」→「リボンのユーザー設定」→「コマンドの選択」からメインタブを選択→「開発」を選択→「追加」を押す→OK
  • VBEを開く

    ①「開発タブ」 → Visual Basic を選択する
    ②Alt+F11 を押す

    上記のどちらでも開けます!

    ちなみにVBEとは「VBAというプログラミング言語を操作・編集するための統合開発環境」のことです。

  • 標準モジュールの追加

    「挿入」→「標準モジュール」を選択

    「挿入」→「標準モジュール」を選択
  • コードを記入する

    追加されたモジュール(画像だと「Module1」)をダブルクリックで選択し、右側のブロックにコピーした内容を貼り付けます。貼り付けたらシートに戻りましょう

    コピーした内容を貼り付け
  • 対象範囲を選択してマクロを使用する

    A1~A5を選択すると、B1~B5に入力されます。

    B1~B5に入力されます

    対象範囲を選択→「開発タブ」→「マクロ」→先ほどのマクロを指定→「実行」

    対象範囲を選択→「開発タブ」→「マクロ」→先ほどのマクロを指定→「実行」

ぜひ試してみてください!

スプレッドシートでQRコードを一括作成する方法

スプレッドシートでも「マクロ」機能を利用できますが、大元となるプログラミング言語が違うため、先ほど紹介したVBAコードは使用できません

Excelとスプレッドシートの違い
  • マクロ機能の使い方

    Excelもスプレッドシートも「マクロの記録」という「録画→再生」のような機能は同じように使えます。

    ただし、録画する時の手順を再生して処理するだけなので、手順以上複雑な処理ができないなど、汎用性に欠けます。

    「簡単な操作であれば」マクロの記録機能で十分という程度ですね。

  • 本来の「マクロ機能」の違い

    より複雑な処理をしたいのであれば、プログラミング言語を使ってコードを作成する必要があります。Excelでいうと「VBA」ですね。

    スプレッドシートでは「Google Apps Script(GAS)」というプログラミング言語がこのVBAに該当するので、スプレッドシートではVBAが使えないというわけです

ただ、スプレッドシートもすごく便利なので、マクロを使って一括作成したいですよね!

スプレッドシートのマクロ設定方法
  • スクリプトエディタの開放

    スプレッドシートを開き、「拡張機能」メニューから「Apps Script」を選択します。これにより、GASのエディタが開きます。

    スクリプトエディタの開放
  • スクリプトの記述

    別タブでエディタが開かれるので、その中に以下のコードを入力します。

    JavaScript
    function generateQRCode() {
      try {
        var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
        var range = sheet.getActiveRange();
        var values = range.getValues();
    
        for (var i = 0; i < values.length; i++) {
          var qrData = encodeURIComponent(values[i][0]);
          var qrURL = "https://api.qrserver.com/v1/create-qr-code/?data=" + qrData;
          sheet.getRange(range.getRow() + i, range.getColumn() + 1).setFormula('=IMAGE("' + qrURL + '")');
        }
      } catch (error) {
        Logger.log("エラーが発生しました: " + error.message);
        SpreadsheetApp.getUi().alert("QRコードの生成中にエラーが発生しました。詳細はログを確認してください。");
      }
    }
  • 内容を保存
    内容を保存
  • マクロの実行準備

    スプレッドシートに戻る→「拡張機能」→「マクロ」→「マクロをインポート」を選択

    マクロの実行準備

    対象のコードのところにある「関数を追加」を選択→閉じる

    対象のコードのところにある「関数を追加」を選択

    これで「マクロ」の項目のなかに追加できました!

    「マクロ」の項目のなかに追加
  • マクロを使う

    使い方はすごく単純で、対象範囲を選択してから、さきほど「マクロ」内に追加したコードを押すだけ!

    ↓こうなります

    対象範囲を選択してから、さきほど「マクロ」内に追加したコードを押すだけ
  • ※初回実行時の承認※

    マクロを初めて実行する際、スクリプトの実行に必要な権限を付与するための承認が求められます。

    「このアプリはGoogleで確認されていません」的な表示が出た場合、左下の「詳細」をクリックし、「(スクリプト名)(安全ではないページ)に移動」を選択します。

    ここ、けっこうわかりづらかったので注意。「詳細」ボタンが目立たない色で…

    私は「安全なページへ移動する」的な目立つボタンを押してしまい、先に進めず勝手に途方にくれてましたw

エラー対処:よくあるトラブルと解決方法

QRコード生成中に発生しがちなトラブルには、いくつかのパターンがあります

  • API接続エラー

    外部APIとの接続がうまくいかない場合は、インターネット接続状況やAPIキーの有効性を確認しましょう。

  • 画像表示サイズの調整

    生成されるQRコードの画像サイズが適切でない場合、APIのURLにサイズパラメーターを追加して調整します。

  • データ形式の確認とエンコード方法

    データに特殊文字が含まれている場合、ENCODEURL関数を使うことで正確にエンコードし、問題を回避できます

こうしたエラー対策をしっかりと理解しておくことで、スムーズにQRコードを活用することができます。

【応用編】プログラミングで広がるQRコードの可能性

【応用編】プログラミングで広がるQRコードの可能性

Python in Excelを活用したQRコード自動生成

Python in Excelとは、Microsoft 365の特定のバージョンから利用可能な超便利機能で、プログラミング言語である「Python」をExcel上で使用できるというものです

使用できるバージョンは以下↓

Microsoft 365 Business または Enterprise サブスクリプション:
バージョン 2407 (ビルド 17830.20128) 以降のWindows版Excelで利用可能です。

Microsoft 365 Family または Personal サブスクリプション:
バージョン 2405 (ビルド 17628.20164) 以降のWindows版Excelでプレビュー版として利用可能です。

使用できるバージョンであれば、「数式」タブの中に表示されます。

「数式」タブの中に表示
Python in Excel の使い方
  • ベース情報を用意→隣接セル選択→数式バーにコード入力
    ベース情報を用意→隣接セル選択→数式バーにコード入力

    「PY」と書かれた数式バーに直接入力します。

    Python
    import qrcode
    data = xl("A1")
    qr = qrcode.make(data)
    qr.show()

    上記コードを入力しますが、Python in Excel機能を使う時は決定が「Ctrl+Enter」になるのでご注意を!

    (いつも通りEnterを押しても改行されるだけです)

  • ②-1
    QRコードを隣接セルに表示させる

    Ctrl+Enterで入力が完了すると、画像のような表示になってQRコードは表示されてないと思います。

    QRコードを隣接セルに表示させる

    セル内に表示されている「[PY]image」の[PY]という部分をクリックし、出てきたQRコードの右側をクリックすることで、隣接セルに直接QRコードが表示されます。

    セル内に表示されている「[PY]image」の[PY]という部分をクリックし、出てきたQRコードの右側をクリック
    隣接セルに直接QRコードが表示
  • ②-2
    QRコードを単体で表示させる

    セル上ではなく、コードを単体で表示させることもできます。

    QRコードを単体で表示させる

    入力されているセル上で右クリック→「セルの上にプロットを表示」を選択

    入力されているセル上で右クリック→「セルの上にプロットを表示」を選択

    これだけの簡単操作で、好きな位置にQRコードを表示させることができます!

Python in ExcelとVBAの使い分け

Python in ExcelとVBA(Visual Basic for Applications)は、Excelの自動化やデータ処理に使用されるプログラミング言語ですが、その汎用性には明確な違いがあります

  • VBAの特徴
    Excelとの高い親和性

    VBAはExcelに組み込まれており、セルの操作、ブックやシートの管理、OutlookやWordなどの他のMicrosoftアプリケーションとの連携が容易です。

    ローカル環境での実行

    VBAコードはExcel内で実行され、ローカルファイルやフォルダの操作が可能です。

  • Python in Excelの特徴
    高度なデータ分析能力

    Pythonはデータ分析や機械学習に強力なライブラリを持ち、複雑なデータ処理や分析が可能です。

    クラウド上での実行

    Python in Excelはクラウド上で実行され、Anacondaディストリビューションに含まれるライブラリのみが利用可能です。

    制限事項

    セキュリティ上の理由から、インターネットへのアクセスやローカルファイルの操作は制限されています。

  • 汎用性の比較
    VBA

    Excelや他のMicrosoft Office製品の操作、自動化に特化しており、これらのアプリケーション内での作業を効率化するのに適しています。

    Python in Excel

    データ分析や機械学習など、高度なデータ処理に強みがありますが、インターネットアクセスやローカルファイル操作が制限されているため、VBAが得意とするタスクには向いていません。

  • 結論

    目的に応じて使い分けることが重要です。Excel内での操作や他のOffice製品との連携が必要な場合はVBAが適しており、複雑なデータ分析や機械学習を行いたい場合はPython in Excelが有用です。

QRコードの業務活用テクニック

QRコードの業務活用テクニック

実務に役立つQRコードカスタマイズ術

標準的なQRコードの作成方法に加え、カスタマイズ方法も知っておくと良いでしょう

例えば、

①サイズや色の調整
エラー訂正レベルの設定
統一感を持たせたデザイン など

特に、デザイン性を追求したQRコードは消費者に対して強い印象を与え、マーケティング効果を高めるのに役立ちます。

例えば、ある飲料メーカーがブランドカラーを取り入れたQRコードを使用したキャンペーンを行い、消費者のスキャン率が通常のQRコードよりも30%向上したというデータがあります。

このように、デザインされたQRコードはブランドの認知度を高め、ユーザーの関与を促す効果がありますので、取り入れてみてはどうでしょうか?

カスタマイズ例
  • サイズの調整

    QRコードの画像サイズを変更することで、どんな場所にも適切にフィットさせることができます。大きなポスターから小さな名刺まで、用途に応じたサイズ調整が必要です。

  • 色の変更

    ブランドカラーを使ってQRコードをカスタマイズすることで、他のQRコードと差別化することができます。たとえば、会社のロゴの色に合わせることで、QRコードを見た人がブランドを連想しやすくなります。

  • エラー訂正レベルの設定

    QRコードにはエラー訂正レベル(L、M、Q、Hの4段階)を設定することができます。これにより、一部が汚れたり隠れていても、データを正確に読み取ることができます。特に屋外で使用するポスターなど、QRコードが傷つきやすい環境では、高いエラー訂正レベル(例えばH)を設定するのが有効です。

  • デザイン性の向上

    QRコードの中心にロゴを追加したり、コード自体のパターンを変更することで、より視覚的に魅力的なQRコードを作ることができます。これにより、消費者の注意を引きつける効果が高まります。

カスタマイズされたQRコードは、マーケティング資料やプロモーションキャンペーンなどで、ブランドの認知度を高めるのに非常に有効です。

セキュリティ対策:安全なQRコード運用のポイント

QRコードを利用する際のセキュリティにも注意が必要です。外部APIを利用する場合、そのAPIの利用規約をよく確認し、データがどのように扱われるかを理解しておきましょう

セキュリティ対策の例
  • API利用規約の確認と遵守

    利用するAPIの規約を確認し、それに従って安全に使用することが重要です。特に、データが第三者に渡らないよう、プライバシーの保護に配慮しましょう。

  • セキュアなデータ管理とアクセス制御

    APIを使う際には、必要最小限のアクセス権限を設定し、重要なデータが不正にアクセスされないように制御することが重要です。

  • 不正アクセスの防止

    APIキーを外部に漏らさないよう管理し、不正なアクセスが発生しないように注意を払いましょう。また、APIキーを定期的に変更することも、セキュリティ強化に効果的です。

これにより、ビジネスにおけるQRコードの利用を安心・安全に行うことができます。セキュリティを意識したQRコードの使用は、顧客の信頼を得るためにも重要です。

まとめ

まとめ

本記事では、ExcelのIMAGE関数を使ったQRコード生成について、基本的な使い方から応用テクニックまで詳しく解説してきました。

・IMAGE関数でのQRコード基本生成手順
・Google Chart APIを使った高品質化
・Python連携による自動化の実現
・セキュリティ対策の重要ポイント
・実務での効率的な活用方法

これらの技術を活用することで、QRコード作成の工数を最大80%削減できます。さらに、自動化により人的ミスも大幅に減少し、業務品質の向上にもつながります

まずは基本的なIMAGE関数の使い方から始めて、徐々に応用技術を取り入れていくことをお勧めします。

具体的な第一歩として、本記事で紹介した基本的な数式をご自身のExcelで試してみてください!

「帰宅したら23:00か…」

毎日の残業、本当に仕方ないことなのでしょうか?

「帰宅すると家族は寝てる…」
「冷たくなったご飯を1人で食べて寝るだけ…」
「自分の時間なんて一切ない…」

ガマンし続けたその先に、あなたの望む未来はホントにありますか?

私が経験した驚きの変化

  • 2時間の残業が【完全消滅】
  • 手作業の99%が自動化
  • 出社1時間で仕事がほぼ完了

すべては、ある”気づき”から始まりました

大手企業の管理職として10年。
最初はエクセルの知識ゼロから始めた私。

  • パソコン苦手
  • 機能が多すぎてパニック。
  • 「電源どうやってつけるの?」状態
  • ブラインドタッチどころか指一本で入力
  • 悩んでる時間がムダすぎて残業が月70時間
  • 20時間かけて作った資料が間違いだらけでやり直し

そんな私でも、ある方法に出会い、驚くほどの「ヒマ」を手に入れることができました。

※このページは近日中に非公開となります

著者プロフィール
この記事を書いた人

2024年10月から個人ブログを運営。本業で管理職をやる傍ら、趣味として会社に頼らずに生きるためのスキル磨きをしています。将来の夢は、家族と田舎で半自給自足しながらのんびり生きること。出社後1時間で仕事が終わるエクセルの使い方や、その他個人的なおススメなどを紹介していきます!

ゆうまをフォローする
エクセル時短知識
シェアする
ゆうまをフォローする
タイトルとURLをコピーしました