Microsoft ExcelでMAKEARRAY関数を使用する方法

in tech

セル A1 に 1 つの数式を入力し、指を離さずに 100 セルのグリッドが作成される様子を想像してみてください。ドラッグ、混乱、$ ロック、エラーはありません。それがMAKEARRAYの力です。単一のエレガントな式を使用して、動的で堅牢なデータセットを数秒で作成します。面倒な作業は Excel に任せましょう。

MAKEARRAY は、Excel for Microsoft 365、Excel for the web、および最新の Excel タブレットおよびモバイル アプリで利用できます。

MAKEARRAY 関数を理解する

思ったよりも簡単です

MAKEARRAY を使用するには、構築するグリッドの大きさと、行と列の位置に基づいて各セルにどのような値を含める必要があるかを Excel に指示するものと考えてください。次に Excel は、そのグリッド内のすべての座標にロジックを適用します。

構文

MAKEARRAY 式は次の引数で構成されます。

=MAKEARRAY(rows, cols, LAMBDA(row, col, calculation))

どこ:

  • そして コル グリッドのサイズを設定します。
  • ラムダ グリッド内の各セルに適用される関数です。
  • そして コル パラメータ名です(例: r そして c) 現在のセルの位置を追跡します。
  • 計算 セルの値を決定するロジックまたは数学です。
左側にラムダ アイコン、中央に Excel の数式、背景にぼやけたスプレッドシートが表示されたラップトップ。

Excel で LAMBDA を使用して独自の関数を作成する方法

最も複雑な数式を簡略化して再利用します。

10×10 グリッドの例

MAKEARRAY の動作を確認する最良の方法は、標準の乗算表です。

=MAKEARRAY(10, 10, LAMBDA(r,c, r * c))
10x10 の計算グリッドを生成する Excel の MAKEARRAY 式。

Excel は、行 1、列 1 (1 x 1) から行 10、列 10 (10 x 10) までグリッドを埋めます。 MAKEARRAY は動的配列関数であるため、数式セルを選択すると、結果が隣接するセルに広がります (青い線で示されます)。

例 1: ランダムな品質管理バッチの生成

ランダム化されたデータ入力の自動化

MAKEEARRAY は、ランダム化された値または特定のテキスト ラベルをグリッドに設定できます。これは、サンプル データの生成、シミュレーションの作成、またはテンプレートのテストに最適です。

シナリオ: あなたは、バッチ検査レポートをシミュレートするために、ランダム化された品質管理グレード (A、B、または C) のさまざまなサイズのテスト グリッドを作成する必要があるプロジェクト マネージャーです。手動で入力する代わりに、シートが再計算されるたびに新しいランダム セットを生成できます。

式は次のとおりです。

=MAKEARRAY(B1, B2,
LAMBDA(r,c,
CHOOSE(RANDBETWEEN(1, 3), "Grade A", "Grade B", "Grade C")))
ランダム化された品質管理グレード (A、B、または C) のテスト グリッドを作成する Excel の MAKEARRAY 式。

これが起こっていることです:

  • B1 そして B2 行数と列数を含むセルを参照します。これらの引数をハードコーディングすることもできますが、引数を参照すると、数式を編集せずにグリッドのサイズを簡単に変更できます。
  • ランドビトウィーン(1, 3) すべてのセルに対して 1 から 3 までのランダムな整数を選択します。 RANDBETWEEN は揮発性関数であるため、Excel が再計算するたびにグリッドが再生成されます。
  • 選ぶ 各乱数をグレード (1 = A、2 = B、3 = C) にマッピングします。
数式とその周りのいくつかのアラートを含む Excel ファイルの図。

Microsoft Excel の数式で値のハードコーディングを避けるべき理由

セルまたは名前付き範囲を参照することが今後の方法です。

例 2: 段階的な価格設定グリッドの作成

動的モデルへの外部セル参照の使用

MAKEARRAY は、独自の式の外にある特定のセルを参照できます。これは、単一の入力セルを変更するとグリッド全体が即座に更新されるモデルを構築できることを意味します。

シナリオ A: 座席がステージにどれだけ近いかに基づいて異なる料金を請求する会場の座席表を作成したいと考えています。先頭の一定数の列はプレミアムで、残りの列は標準です。

まず、パラメータを設定します。細胞 B1 行数が含まれます。 B2 列ごとの座席数が含まれます。 B3 プレミアム行の数を示します。 B4 プレミアム価格が含まれており、 B5 標準価格が含まれています。

それから、セル内で D1、次の式を入力します。

=MAKEARRAY(B1, B2,
LAMBDA(r,c,
IF(r<=B3, B4, B5)))

現在の行番号が次の値以下である場合、 B3 (プレミアム行)、プレミアム価格を返します (B4、$120.00)。それ以外の場合は、標準価格 (B5、$95.00)。

シナリオ B: ここで、後部行に価値レベルを提供したいと考え、これを反映するために列 B のパラメーターを調整するとします。

これらのパラメータを適用するには、セル内の数式 D1 次のようにする必要があります。

=MAKEARRAY(B1, B2,
LAMBDA(r,c,
IF(r<=B3, B5, IF(r<=B1-B4, B6, B7))))

これは、ネストされた IF ステートメントを使用して追加のロジックを処理します。

  • まず、行インデックス (r) 以下です B3 (プレミアム行)。 true の場合、プレミアム価格が割り当てられます (B5、$120.00)。

  • false の場合、行が以下であるかどうかという 2 番目のチェックが実行されます。 B1-B4?これにより、割引行の数が減算されます (B4) 合計行から (B1) 中間層の境界を見つけます。 true の場合、標準価格が割り当てられます (B6、$95.00)。

  • 両方が false の場合、割引価格が割り当てられます (B7、75.00ドル)。

価格マップを読みやすくするには、条件付き書式のカラー スケール (条件付き書式設定 > カラースケール)。ただし、Excel の[適用先]フィールドは現在、動的スピル演算子 (#) を処理できないため、これを機能させるには、配列の最大サイズを予測し、事前にその範囲全体に書式設定を適用する必要があります。

例 3: 成長率マトリックスのモデル化

MAKEARRAY を次のレベルに引き上げるには、これを使用してさまざまな層にわたる累積的な成長予測をシミュレートし、列インデックスを使用して時間の経過に伴う成長率をスケーリングできます。

シナリオ: ベースラインの月間成長率を 5% と仮定して、4 つの戦略 (標準、複合、加速、最大) にわたって、最初の 1 ドルの投資が 12 か月にわたってどのように成長するかを予測しています。

列名は、実際の財務戦略ではなく、発散する成長を示しています。

このモデルでは月と戦略が固定されているため、ヘッダーを手動で入力できます。 A列 そして 行1。それから、セル内で B2、成長エンジンに入ることができます。

=MAKEARRAY(12,4,
LAMBDA(r,c,
1.05^((r-1)*c)))

仕組みは次のとおりです。

  • 行インデックス (r-1): これは時間を表します。 r-1 は、月 1 (配列の行 1) が指数 0 (1.05^0) で始まることを意味し、成長が始まる前の初期値を表します。
  • 列インデックス (c): これにより指数がスケールされるため、時間の経過とともに値が戦略間で異なります。

SEQUENCE と MAKEARRAY: どちらを使用するべきですか?

タスクに適したツールの選択

Excel の MAKEARRAY 関数と SEQUENCE 関数は似ているように見えますが、異なる目的を果たします。単純なリストが必要な場合は SEQUENCE を使用しますが、セルの値がグリッド内の特定の位置に依存する場合は MAKEARRAY を使用します。

特徴

順序

メイクアレイ

論理

単純な増分 (1、2、3、…)

交差ごとのカスタム ロジック

寸法

1D または単純な 2D カウンティング

任意の行 x 列

カスタマイズ

「ステップ」値に限定される

LAMBDA の完全な柔軟性

こんな方に最適

行番号、単純な日付リスト

価格マップ、シミュレーション、成長モデル

背景に Excel スプレッドシート、前面に Excel ロゴが表示されます。

Microsoft Excelの使い方を変えた6つの機能

動的配列関数はゲームチェンジャーでした。


単一の数式でグリッド全体を構築できるようにすることで、最終的に「クリック アンド ドラッグ」ワークアウトに終止符を打つエレガントなワークフローを採​​用することができました。興味深い点は、MAKEARRAY がスプレッドシートを構築するためのよりクールな方法への単なる入り口であるということです。 5 つの反復子ヘルパー関数とアキュムレータ ヘルパー関数を使用して、結果を調べて磨きをかけることで、データを完全に制御できます。これらの LAMBDA 関数は Excel をプログラミング言語に変えたものであり、これらの LAMBDA 関数を理解することで、平均的な Excel ユーザーよりも優れたレベルに達することができます。

OS

Windows、macOS、iPhone、iPad、Android

無料トライアル

1ヶ月

Microsoft 365 には、最大 5 台のデバイスで Word、Excel、PowerPoint などの Office アプリ、1 TB の OneDrive ストレージなどへのアクセスが含まれています。


関連記事

前の投稿
オフにしたほうがよい Windows の迷惑な機能 5 つ
次の投稿
3年落ちのマスタング・マッハEはすでに新車より1万ドル安い

関連記事