10年間使ってやっと発見したExcelの驚くべきトリック

Excelには秘められた力があります。その可能性を使い尽くしたと思った瞬間、たった一つの関数で開ける新たな扉が静かに姿を現すのです。

今回のトリックはシンプルで、おそらく意図的ではないかもしれませんが、それでも素晴らしいものです。実にシンプルです。ExcelはURLを生成し、URLとして送られてきた雑然としたテキストをマークアップし、そのURLから画像をレンダリングします。これらを組み合わせることで、Excelは無料の画像APIの世界全体への軽量なフロントエンドになります。

10年間使ってやっと発見したExcelの驚くべきトリック

IMAGE関数は基本的なトリックです

APIクライアントとして使用する

QRコード付きExcelシート

例を挙げて説明しましょう。イベントなどでExcelシートにQRコードを挿入したいとします。ただ挿入するだけでなく、Excel内で直接生成したいとします。問題は、ExcelにはネイティブのQRコード生成機能がないことです。しかし、ExcelではQRコード生成機能は必要ありません。URL経由で画像を生成できるサービスがあれば… ExcelはIMAGE()を使ってドラッグします.

唯一の締め切りはコーディングです。これを飛ばしてしまうと エンコードURL()名前にスペース、ダッシュ、絵文字など、人間に似たものが含まれていても、数式は機能します。 エンコードURL() それはあらゆるものの爆発を防ぐものです。

シートにゲストの名前とチケットの有無が記載されているとします。QRコードにはゲストの名前と支払いの有無を記載する必要があります。QRServerは静的QR画像APIのシンプルな例です。URLの形式は次のとおりです。

https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=[YOURDATA]&color=000000&bgcolor=FFFFFF

في E2この完全な数式は QR コードを作成します。

=IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=200x200&data="&ENCODEURL("name="&A2&"; paid="&D2)&"&color=000000&bgcolor=FFFFFF")

下にスワイプすると、各行にQRコードが表示されます。スマートフォンのカメラでQRコードをスキャンすると、ペイロードが表示されます。スキャン時にペイロードをより便利に活用したい場合は、複数の値を混ぜずにラベルを付けてください。複数のフィールドには、次のようにコーディングできます。

=IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=200x200&data="&ENCODEURL("name="&A2&"; age="&B2&"; gender="&C2&"; paid="&D2))

QR コードだけではありません。

Excel 内で GitHub スタイルのバッジを作成する

shields.io バッジ付きの Excel シート

QRコードを使い始めると、すぐに「他に画像として何が作れるだろうか?」と自問します。ここでshields.ioの出番です。GitHubの小さなバッジはどこでも見かけるでしょう。これはURLから作成された画像です。セルが A2 名前が含まれている場合は、基本的な青いバッジが作成されます。

=IMAGE("https://img.shields.io/badge/"&ENCODEURL(A2)&"-blue.png?style=flat")

さて、ここからが楽しい部分です。 条件付き書式 バッジの内側。価値が D2 هيي TRUEそれを青にしてください。そして、もしそれが FALSE赤くする:

=IMAGE("https://img.shields.io/badge/Guest-"&ENCODEURL(A2)&IF(D2,"-blue.png?style=flat","-red.png?style=flat"))

バッジにラベルと値(たとえば、支払済み/未払いのステータス)を表示する場合は、次のようにします。

=IMAGE("https://img.shields.io/badge/"&ENCODEURL("Paid")&"-"&ENCODEURL(IF(D2,"Yes","No"))&".png?style=flat")

自動的に更新されるチャートを作成する

今回は写真として

セルにクイックチャートが入った Excel シート

ここで、トリックは単なるトリックではなく、ダッシュボードへと進化し始めます。QuickChartはURLからグラフを作成できます。つまり、Excelでグラフの設定を作成し、セルに直接画像を表示できるのです。

細胞が B2:D2 プロットしたい数値(たとえば、3 週間の合計)が含まれている場合は、単純な棒グラフ画像が生成されます。

=IMAGE("https://quickchart.io/chart?c="&ENCODEURL("{type:'bar',data:{labels:['W1','W2','W3'],datasets:[{label:'Totals',data:["&B2&","&C2&","&D2&"]}]}}"))

このパターンを応用して、クラスごと、人ごと、プロジェクトごと、あるいは物事ごとにチャートを作成することもできます。これは、 Excelの条件行さらに制御したい場合。

同じパターン「URL + CAM + DISPLAY ITEM」は Google Sheets スプレッドシートでも機能するため、より汎用性が高まります。

Excelシートでリアルタイム天気予報

傘を忘れないでください

天気予報をインポートしたExcelシート

もっと実用的なものが欲しい場合は、wttr.inで天気画像を生成できます。セルが A1 場所(たとえば、シカゴ)が含まれている場合、この画像にはターミナル スタイルの天気グラフが表示されます。

=IMAGE("https://wttr.in/"&(A1)&".png?0_m_q_n")

プロフィール写真とプレースホルダー

各クラスに「目に見えるもの」が必要な場合

QRコードとGravatar画像を含むExcelシート

すべてのスプレッドシートにQRコードが必要なわけではありません。スプレッドシートが単なる表ではなく、実際のシステムのように見せるために、見やすい列だけで十分な場合もあります。

メールアドレスをお持ちの場合は A2 統一感のあるアバターが必要な場合は、Gravatar で作成できます。以下の式を使えば、何もアップロードしなくても、アイデンティコン風のアバターを作成できます。

=IMAGE("https://www.gravatar.com/avatar/"&LOWER(TEXTJOIN("",TRUE,DEC2HEX(CODE(MID(A2,SEQUENCE(LEN(A2)),1)),2)))&"?d=identicon&s=200")

Excel 内で直接ミーム画像を作成することもできます。

(当然)

ExcelでAPI経由で作成された画像を表示できることがわかったら、早速実験してみましょう。面白い例を挙げましょう。MemegenはURLからミーム画像を作成します。URLの上部と下部のテキストはパスの一部です。

<XNUMXxDXNUMX><XNUMXxDXNUMX><XNUMXxAXNUMX><XNUMXxDXNUMX><XNUMXxDXNUMX><XNUMXxBXNUMX><XNUMXxBXNUMX>ا<XNUMXxBXNUMX>ا A2 上部のテキストと A3 以下のテキストが含まれているので、これは機能します。

=IMAGE("https://api.memegen.link/images/buzz/"&ENCODEURL(A2)&"/"&ENCODEURL(A3)&".jpg",2)

「buzz」を別のテンプレート名に置き換えても、同じスタイルが適用されます。

サードパーティの画像APIに機密データを貼り付けないでください。これらのサービスはリクエストをログに記録できると想定してください。仕事でこれを行う場合は、必ず許可を得てください。また、本当に情熱を注いでいるものを作る場合は、まずダミーデータでテストしてください。

IMAGE و ENCODEURL これらはExcelをURLジェネレーターとパラメータエディタに変え、出力を表示できるようにします。だからこそ、このトリックは無限に思えるのです。一度理解すれば、あらゆる場所でAPIを目にするようになり、うまく活用できるようになるでしょう。

これを友達に見せた時、口から出た最初の言葉は、Excelが新しい機能を発表するたびにいつも言うのと同じでした。「Excelでこんなことができるって知ってた?」「え、知ってた?」10年経った今でも、Excelは私に新たな驚きを用意してくれています。

トップボタンに移動