ExcelのTAKE・DROP・CHOOSECOLSを同じ表で比べる ― 必要な行列だけ安全に切り出す

VBA・Officeカテゴリを表すパンダのイラスト VBA・Office

この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。Microsoft公式のTAKE・DROP・CHOOSECOLS仕様を確認し、同じ小さな表から「取る」「除く」「列を選ぶ」の違いを安全に観察できる形へ整理しています。

検証ステータス:📘 Microsoft公式仕様確認済み・Excel実機未確認
情報確認基準日:2026年10月5日

Excelの表から「先頭2行だけ」「末尾1行を除く」「1列目と3列目だけ」といった切り出しをしたいとき、元データを削除せず別の場所へ結果を出せるのが TAKE、DROP、CHOOSECOLS です。

3つは似ていますが、役割は違います。

関数何を指定するか向く用途
TAKE何行・何列を取るか先頭N件、末尾N件
DROP何行・何列を除くかヘッダー除外、末尾除外
CHOOSECOLS何列目を残すか必要な列だけ抜き出す

同じ表で3つを試す

A1:C4へ次のダミーデータを入れます。

名前部署売上
青木営業120
伊藤総務80
佐藤営業150

まず、別の空いているセルへ次を入力します。

=TAKE(A1:C4,2)

先頭2行が新しい配列として返ります。元表は消えません。

次に負数へ変えます。

=TAKE(A1:C4,-2)

Microsoft公式仕様では、TAKEの行数や列数へ負数を指定すると配列の末尾側から取得します。

DROPは「残す」ではなく「除く」

ヘッダー行を除いてデータ部分だけ返すなら、次のようにします。

=DROP(A1:C4,1)

先頭1行を除外します。

末尾1行を除外するなら負数です。

=DROP(A1:C4,-1)

TAKEとDROPを並べると違いが見えます。

flowchart LR
    A["元の配列"] --> B["TAKE: 指定分を取る"]
    A --> C["DROP: 指定分を除く"]
    A --> D["CHOOSECOLS: 指定列を選ぶ"]
    B --> E["新しい配列"]
    C --> E
    D --> E

CHOOSECOLSは列番号で選ぶ

名前と売上だけ欲しく、部署列を外したい場合です。

=CHOOSECOLS(A1:C4,1,3)

1列目と3列目が新しい配列として返ります。

「何列削除するか」ではなく、「何列目を返すか」を指定する点がDROPとの違いです。

1か所だけ変えてみる

=TAKE(A1:C4,2) の 2 を -2 に変えます。

ここで見るのは、正数と負数で基準位置が変わる点です。

同様にDROPでも、

=DROP(A1:C4,1)
=DROP(A1:C4,-1)

を比較すると、先頭側と末尾側の違いを確認できます。

0を指定するとどうなる?

Microsoft Supportでは、TAKEまたはDROPの行数・列数へ0を指定し、空配列になる場合は #CALC! が返ると説明されています。

意図的に次を試します。

=TAKE(A1:C4,0)

Excel実機での結果を確認していないため、表示結果を「実測」とは扱いません。実際のブックで試し、現在利用中のExcelでどう表示されるか確認してください。

CHOOSECOLSでは、列番号の絶対値が0、または配列の列数を超える場合に #VALUE! になるとMicrosoftが案内しています。

実務ではどれを使う?

先頭10件だけ確認したい

=TAKE(A2:F100,10)

大量データの先頭だけ確認するときに使えます。

CSV取込後にヘッダーを外したい

=DROP(A1:F100,1)

「1行目を除いた残り」という考え方です。

帳票から必要列だけ抜きたい

=CHOOSECOLS(A1:F100,1,3,6)

列順を指定して別表を作れます。元表を直接削除しないため、確認用のビューを作る用途にも向きます。

スピル先を空けておく

これらは動的配列関数です。結果が複数セルへ広がるため、出力先に既存データがあると正常にスピルできません。

「数式が間違っている」と決めつける前に、結果が展開される範囲に値が残っていないかも確認します。

仕事で使うときの考え方

元データを直接削除・並べ替えせず、別領域で必要部分だけ切り出せるのが大きな利点です。

たとえば、

  • 元CSVはそのまま保持

  • TAKEで先頭サンプルを確認

  • DROPでヘッダーを除外

  • CHOOSECOLSで必要列だけ抽出

という形にすると、「元データ」と「加工後」を分離できます。

ただし、列番号を固定したCHOOSECOLSは元データの列構成変更に影響されます。毎月届くファイルで列順が変わる場合は、Power Queryなど別の方法も検討します。

GitHubサンプル

公式情報

文書情報

記事タイトル
ExcelのTAKE・DROP・CHOOSECOLSを同じ表で比べる ― 必要な行列だけ安全に切り出す
作成日
更新日
Source URL
https://papanda925.com/?p=18011

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました