<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>セル情報 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%E3%82%BB%E3%83%AB%E6%83%85%E5%A0%B1/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Mon, 18 May 2026 14:04:03 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>セル情報 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのCELL関数の使い方｜info_type 7種類とINDIRECT連携まで完全解説</title>
		<link>https://mashukabu.com/spreadsheet-cell-function/</link>
					<comments>https://mashukabu.com/spreadsheet-cell-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 22 Mar 2026 01:13:38 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ADDRESS]]></category>
		<category><![CDATA[CELL]]></category>
		<category><![CDATA[COLUMN]]></category>
		<category><![CDATA[ROW]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[セル情報]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4995</guid>

					<description><![CDATA[GoogleスプレッドシートのCELL関数の使い方を完全解説。info_type 7種類の戻り値（address・col・row・type・width・contents・prefix）から、INDIRECT連携・データ型分岐・ARRAYFORMULAとの組み合わせ、Excelとの差分まで実例付きで解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「いま参照しているセルの番地を、文字列として数式に組み込みたい」「データの種類によって計算を切り替えたい」。スプレッドシートで集計表を作っていると、こんな場面が意外とよく出てきますよね。</p>



<p class="wp-block-paragraph">そんなときに頼れるのが、スプレッドシートの <strong>CELL関数</strong> です。セル番地・行列番号・データ型・列幅といった「セルそのものの情報」を、関数1本でまとめて取り出せます。INDIRECT関数や<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>と組み合わせれば、動的なセル参照や一括判定もスッキリ書けますよ。</p>



<p class="wp-block-paragraph">この記事では、GoogleスプレッドシートのCELL関数の使い方をまとめます。info_type 7種類の戻り値早見表、INDIRECT連携・データ型分岐・条件付き書式・Apps Script代替まで、実務で使える7パターンを実例付きで整理します。Excel版CELL関数との差分や、<code>#VALUE!</code>エラーへの対処法もあわせて解説しますね。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのCELL関数とは？セル情報を1関数で取得する関数</a><ol><li><a href="#toc2" tabindex="0">CELL関数で何ができる？</a></li><li><a href="#toc3" tabindex="0">揮発性関数としての注意点</a></li></ol></li><li><a href="#toc4" tabindex="0">CELL関数の構文と引数</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li><li><a href="#toc7" tabindex="0">info_typeは必ずダブルクォートで囲む</a></li></ol></li><li><a href="#toc8" tabindex="0">info_type 7種類の戻り値早見表</a><ol><li><a href="#toc9" tabindex="0">type が返す3種類の値（b / l / v）</a></li><li><a href="#toc10" tabindex="0">prefix が返す配置プレフィックス記号</a></li></ol></li><li><a href="#toc11" tabindex="0">CELL関数の基本的な使い方</a><ol><li><a href="#toc12" tabindex="0">address でセル番地を絶対参照の文字列で取得する</a></li><li><a href="#toc13" tabindex="0">row / col で行番号・列番号を取得する</a></li><li><a href="#toc14" tabindex="0">type でデータ型を1文字で判別する</a></li><li><a href="#toc15" tabindex="0">基本パターン早見表</a></li></ol></li><li><a href="#toc16" tabindex="0">実務で使えるCELL関数の活用パターン7選</a><ol><li><a href="#toc17" tabindex="0">パターン1: INDIRECTと組み合わせて動的にセル参照を組み立てる</a></li><li><a href="#toc18" tabindex="0">パターン2: type でデータ型に応じた計算分岐を組む</a></li><li><a href="#toc19" tabindex="0">パターン3: ARRAYFORMULAでデータ型を一括取得する</a></li><li><a href="#toc20" tabindex="0">パターン4: 条件付き書式でデータ型をハイライトする</a></li><li><a href="#toc21" tabindex="0">パターン5: width で列幅に応じた表示制御を行う</a></li><li><a href="#toc22" tabindex="0">パターン6: address と MATCH で動的範囲を組み立てる</a></li><li><a href="#toc23" tabindex="0">パターン7: Apps Scriptでシート名を取得する代替策</a></li></ol></li><li><a href="#toc24" tabindex="0">CELL関数のよくあるエラーと対処法</a></li><li><a href="#toc25" tabindex="0">CELL関数とExcel版の違い</a><ol><li><a href="#toc26" tabindex="0">filename と format の代替策</a></li></ol></li><li><a href="#toc27" tabindex="0">CELL関数と似た関数の使い分け</a></li><li><a href="#toc28" tabindex="0">よくある質問</a><ol><li><a href="#toc29" tabindex="0">CELL関数でファイル名やシート名を取得できますか？</a></li><li><a href="#toc30" tabindex="0">CELL関数で複数セルの情報を一括取得できますか？</a></li><li><a href="#toc31" tabindex="0">CELL(&#8220;type&#8221;, A1) で日付や TRUE/FALSE はどう判別されますか？</a></li><li><a href="#toc32" tabindex="0">CELL関数は揮発性関数ですか？</a></li></ol></li><li><a href="#toc33" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのCELL関数とは？セル情報を1関数で取得する関数</span></h2>



<p class="wp-block-paragraph">スプレッドシートのCELL関数（読み方：セル関数）は、<strong>指定したセルの情報を取り出す関数</strong>です。「どんな情報がほしいか」を最初の引数 info_type で切り替えながら、1本の関数で何種類もの用途に使えるのが特徴ですね。</p>



<p class="wp-block-paragraph">CELL関数で取得できる情報は、おもに次の4種類です。</p>



<ul class="wp-block-list"><li>セル番地（<code>$A$1</code> のような絶対参照の文字列）</li><li>行番号・列番号（数値）</li><li>データ型（空白・文字列・数値の判別）</li><li>列幅（整数）</li></ul>



<p class="wp-block-paragraph">たとえば <code>=CELL("address", B3)</code> と書けば、結果は <code>$B$3</code> という文字列になります。この文字列を <a href="https://mashukabu.com/spreadsheet-indirect-function/">INDIRECT関数</a> に渡せば、行や列の位置を動的に組み立てた参照が作れますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">CELL関数で何ができる？</span></h3>



<p class="wp-block-paragraph">CELL関数が活躍するのは、おもに次のような場面です。</p>



<ul class="wp-block-list"><li>INDIRECT関数と組み合わせて <strong>動的にセル参照を組み立てたい</strong> とき</li><li>セルが空白か文字列か数値かによって <strong>計算式を分岐させたい</strong> とき</li><li>条件付き書式で <strong>データ型に応じてセルをハイライト</strong> したいとき</li><li>レイアウトのチェックで <strong>列幅を数値として取得したい</strong> とき</li><li>ADDRESS関数の代わりに <strong>セル番地を文字列で取得したい</strong> とき</li></ul>



<h3 class="wp-block-heading"><span id="toc3">揮発性関数としての注意点</span></h3>



<p class="wp-block-paragraph">CELL関数は揮発性関数（ボラタイル関数）です。シート上のどこかが再計算されるたびに評価され直すので、データ量が多いシートで多用すると、動作がもっさりすることがあります。大量のCELL関数を並べる前に、ROW関数・COLUMN関数・ISBLANK関数など <strong>専用の軽い関数で代用できないか</strong> を先に検討してみてくださいね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>GoogleスプレッドシートのCELL関数は、Excelに比べて使える info_type が少なめです。<code>"filename"</code> や <code>"format"</code> などはスプレッドシートでは非対応で、シート名取得やセル書式の取得には別の方法が必要になります。詳しくは「Excel版との違い」セクションで解説します。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc4">CELL関数の構文と引数</span></h2>



<h3 class="wp-block-heading"><span id="toc5">基本構文</span></h3>



<pre class="wp-block-code"><code>=CELL(info_type, [参照])</code></pre>



<h3 class="wp-block-heading"><span id="toc6">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>info_type</td><td>必須</td><td>取得したい情報の種類を文字列で指定する（&#8221;address&#8221; / &#8220;col&#8221; / &#8220;row&#8221; / &#8220;type&#8221; / &#8220;width&#8221; / &#8220;contents&#8221; / &#8220;prefix&#8221;）</td></tr><tr><td>参照</td><td>任意</td><td>情報を取得したいセル。省略するとアクティブセルが対象</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">info_type は <strong>必ずダブルクォーテーションで囲んで文字列として渡します</strong>。<code>=CELL("address", A1)</code> のように、第1引数を文字列リテラルにするのがポイントですね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>第2引数を省略するとアクティブセル（選択中のセル）が対象になりますが、シートの再計算タイミングで結果が動いてしまいます。実務では参照を明示的に指定するのが安全ですよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc7">info_typeは必ずダブルクォートで囲む</span></h3>



<p class="wp-block-paragraph">セル参照のように <code>=CELL(A1, B2)</code> と書いてしまうと、A1の値が info_type として渡されることになり、A1に &#8220;address&#8221; などの文字列が入っていない限り <code>#VALUE!</code> エラーになります。スペルミス（<code>"adress"</code> のように d が1つ）や大文字小文字違い（<code>"Address"</code>）でも同じくエラーが返るので、注意しましょう。</p>



<h2 class="wp-block-heading"><span id="toc8">info_type 7種類の戻り値早見表</span></h2>



<p class="wp-block-paragraph">スプレッドシートのCELL関数で使える info_type は、次の7種類です。</p>



<figure class="wp-block-table"><table><thead><tr><th>info_type</th><th>戻り値の例</th><th>用途</th></tr></thead><tbody><tr><td><code>"address"</code></td><td><code>$B$3</code></td><td>絶対参照の文字列でセル番地を取得</td></tr><tr><td><code>"col"</code></td><td><code>3</code></td><td>列番号（A=1, B=2, &#8230;）を整数で取得</td></tr><tr><td><code>"row"</code></td><td><code>5</code></td><td>行番号を整数で取得</td></tr><tr><td><code>"type"</code></td><td><code>b</code> / <code>l</code> / <code>v</code></td><td>データ型（空白・文字列・数値）を1文字で取得</td></tr><tr><td><code>"width"</code></td><td><code>8</code></td><td>セルが属する列の幅を整数で取得</td></tr><tr><td><code>"contents"</code></td><td>セルの値</td><td>参照セルの中身をそのまま返す</td></tr><tr><td><code>"prefix"</code></td><td><code>'</code> <code>"</code> <code>^</code> など</td><td>文字列の配置プレフィックス記号を取得</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>第2引数に範囲（例：<code>A1:C10</code>）を渡すと、<strong>範囲の左上セルだけ</strong>を対象にした結果が返ります。範囲のすべてのセルについて情報を取りたいときは、<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a> との組み合わせが必要ですよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc9">type が返す3種類の値（b / l / v）</span></h3>



<p class="wp-block-paragraph"><code>"type"</code> を指定したときに返る1文字は、それぞれ次のような意味を持ちます。</p>



<figure class="wp-block-table"><table><thead><tr><th>戻り値</th><th>意味</th><th>該当するセルの中身</th></tr></thead><tbody><tr><td><code>b</code></td><td>blank（空白）</td><td>セルが空のとき</td></tr><tr><td><code>l</code></td><td>label（文字列）</td><td><code>"東京"</code> <code>"商品A"</code> など</td></tr><tr><td><code>v</code></td><td>value（数値）</td><td><code>100</code>、日付（シリアル値）、TRUE/FALSE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日付やTRUE/FALSEは内部的に数値として管理されているので、すべて <code>v</code> として扱われます。「数値か日付か」を判別したい場合は CELL ではなく <a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a> を使うのが確実ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">prefix が返す配置プレフィックス記号</span></h3>



<p class="wp-block-paragraph"><code>"prefix"</code> は、文字列の配置プレフィックス（セルの先頭に付ける揃え位置の記号）を返します。普段あまり意識しない引数ですが、Lotus 1-2-3 などのレガシーファイルから移行したデータを扱うときに役立ちます。</p>



<figure class="wp-block-table"><table><thead><tr><th>戻り値</th><th>意味</th></tr></thead><tbody><tr><td><code>'</code></td><td>左揃え</td></tr><tr><td><code>"</code></td><td>右揃え</td></tr><tr><td><code>^</code></td><td>中央揃え</td></tr><tr><td><code></code></td><td>両端揃え</td></tr><tr><td>空文字</td><td>上記以外（数値や、プレフィックスが付いていない文字列）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">通常のスプレッドシート利用では空文字が返ることがほとんどなので、データ移行時のチェック用と覚えておけばOKです。</p>



<h2 class="wp-block-heading"><span id="toc11">CELL関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">ここからは info_type 別に、よく使うパターンを順に見ていきます。コピペして使えるサンプル式付きで紹介しますね。</p>



<h3 class="wp-block-heading"><span id="toc12">address でセル番地を絶対参照の文字列で取得する</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;address&quot;, B3)</code></pre>



<p class="wp-block-paragraph">結果は <code>$B$3</code> です。文字列として返るので、INDIRECT関数やQUERY関数の引数にそのまま組み込めます。</p>



<p class="wp-block-paragraph">セル番地を文字列で組み立てるなら <a href="https://mashukabu.com/spreadsheet-address-function/">ADDRESS関数</a> を使う手もありますが、ADDRESS は行番号と列番号を別々に渡す必要があります。「あるセルから直接 <code>$A$1</code> 形式の文字列がほしい」だけなら CELL のほうが短く書けますよ。</p>



<h3 class="wp-block-heading"><span id="toc13">row / col で行番号・列番号を取得する</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;row&quot;, A5)  → 5
=CELL(&quot;col&quot;, C1)  → 3</code></pre>



<p class="wp-block-paragraph">行番号・列番号だけがほしい場合は、<a href="https://mashukabu.com/spreadsheet-row-function/">ROW関数</a> / <a href="https://mashukabu.com/spreadsheet-column-function/">COLUMN関数</a> のほうがシンプルに書けます。CELL関数を使うメリットは、address や type などほかの情報と <strong>統一的な書き方</strong> で扱える点にあります。</p>



<h3 class="wp-block-heading"><span id="toc14">type でデータ型を1文字で判別する</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;type&quot;, A1)</code></pre>



<p class="wp-block-paragraph">セルの中身に応じて <code>b</code> / <code>l</code> / <code>v</code> のいずれかが返ります。「このセルにデータが入っているか」「文字列か数値か」を数式で判定したいときに役立ちます。</p>



<p class="wp-block-paragraph">ただし、空白判定だけなら <a href="https://mashukabu.com/spreadsheet-isblank-function/">ISBLANK関数</a>、数値判定だけなら <a href="https://mashukabu.com/spreadsheet-isnumber-function/">ISNUMBER関数</a>、文字列判定だけなら <a href="https://mashukabu.com/spreadsheet-istext-function/">ISTEXT関数</a> のほうが意図が伝わりやすいです。3種類を1つの数式で同時に判別したい場合に CELL の出番ですね。</p>



<h3 class="wp-block-heading"><span id="toc15">基本パターン早見表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>戻り値の例</th><th>主な用途</th></tr></thead><tbody><tr><td><code>=CELL("address", B3)</code></td><td><code>$B$3</code></td><td>INDIRECTと組み合わせて動的参照</td></tr><tr><td><code>=CELL("row", A5)</code></td><td><code>5</code></td><td>行番号取得（ROWの代わり）</td></tr><tr><td><code>=CELL("col", C1)</code></td><td><code>3</code></td><td>列番号取得（COLUMNの代わり）</td></tr><tr><td><code>=CELL("type", A1)</code></td><td><code>b</code> / <code>l</code> / <code>v</code></td><td>データ型による分岐処理</td></tr><tr><td><code>=CELL("width", A1)</code></td><td><code>10</code></td><td>列幅取得・レイアウト確認</td></tr><tr><td><code>=CELL("contents", A1)</code></td><td>A1の値</td><td><code>=A1</code> とほぼ同じ</td></tr><tr><td><code>=CELL("prefix", A1)</code></td><td><code>'</code> / <code>"</code> / <code>^</code> / <code></code> / 空文字</td><td>配置プレフィックス確認</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc16">実務で使えるCELL関数の活用パターン7選</span></h2>



<p class="wp-block-paragraph">ここからは、CELL関数を他の関数と組み合わせた実務向けの応用パターンを7つ紹介します。自分のシチュエーションに近いものから試してみてください。</p>



<h3 class="wp-block-heading"><span id="toc17">パターン1: INDIRECTと組み合わせて動的にセル参照を組み立てる</span></h3>



<p class="wp-block-paragraph">CELL関数で取得した行番号を <a href="https://mashukabu.com/spreadsheet-indirect-function/">INDIRECT関数</a> に渡し、参照先を動的に切り替える定番パターンです。</p>



<pre class="wp-block-code"><code>=INDIRECT(&quot;B&quot; &amp; CELL(&quot;row&quot;, A2))</code></pre>



<p class="wp-block-paragraph">「A2と同じ行のB列の値」を返します。A2の行位置が変わっても、CELL関数が現在の行番号を返してくれるので参照が自動で追従しますよ。</p>



<h3 class="wp-block-heading"><span id="toc18">パターン2: type でデータ型に応じた計算分岐を組む</span></h3>



<p class="wp-block-paragraph">セルが数値か文字列かで計算を切り替えたい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(CELL(&quot;type&quot;, A2)=&quot;v&quot;, A2*1.1, &quot;数値以外&quot;)</code></pre>



<p class="wp-block-paragraph">A2が数値（v）のときだけ1.1倍の計算を行い、それ以外なら「数値以外」と表示します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「数値以外を空欄で残したい」場合は、第3引数を <code>""</code> にすればOKです。<code>=IF(CELL("type", A2)="v", A2*1.1, "")</code> のように書けば、文字列セルは空欄のままになります。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc19">パターン3: ARRAYFORMULAでデータ型を一括取得する</span></h3>



<p class="wp-block-paragraph">CELL関数は単独だと範囲を渡しても左上セルしか返しませんが、<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a> で包むと配列処理に対応します。</p>



<pre class="wp-block-code"><code>=COUNTIF(ARRAYFORMULA(CELL(&quot;type&quot;, A1:A20)), &quot;&lt;&gt;b&quot;)</code></pre>



<p class="wp-block-paragraph">A1:A20の各セルについてデータ型を取得し、空白（<code>b</code>）以外の個数をカウントする式です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>単純に空白以外の個数を数えるだけなら <a href="https://mashukabu.com/spreadsheet-counta-function/">COUNTA関数</a> のほうがシンプルです。CELL関数を使うメリットは「文字列のみカウント」「数値のみカウント」のように <strong>データ型を細かく絞り込めること</strong>。たとえば <code>=COUNTIF(ARRAYFORMULA(CELL("type", A1:A20)), "l")</code> なら文字列セルだけの個数が取れます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc20">パターン4: 条件付き書式でデータ型をハイライトする</span></h3>



<p class="wp-block-paragraph">「数値列のはずなのに文字列が混入しているセルを赤くしたい」といった場面で役立ちます。</p>



<ol class="wp-block-list"><li>対象範囲を選択する（例: A2:A100）</li><li>メニュー「表示形式」→「条件付き書式」を開く</li><li>「カスタム数式」を選ぶ</li><li>数式欄に <code>=CELL("type", A2)="l"</code> と入力する</li><li>背景色などのフォーマットを設定する</li></ol>



<p class="wp-block-paragraph">数値列に文字列が紛れ込んだとき、視覚的にすぐ気づける仕組みになります。</p>



<h3 class="wp-block-heading"><span id="toc21">パターン5: width で列幅に応じた表示制御を行う</span></h3>



<pre class="wp-block-code"><code>=IF(CELL(&quot;width&quot;, A1)&lt;10, LEFT(B1, 5) &amp; &quot;…&quot;, B1)</code></pre>



<p class="wp-block-paragraph">A1の列幅が10未満なら、B1の先頭5文字＋「…」で短縮表示。それ以上ならB1の値をそのまま表示します。</p>



<h3 class="wp-block-heading"><span id="toc22">パターン6: address と MATCH で動的範囲を組み立てる</span></h3>



<p class="wp-block-paragraph">CELL(&#8220;address&#8221;, &#8230;) と <a href="https://mashukabu.com/spreadsheet-match-function/">MATCH関数</a> を組み合わせると、「条件に一致した行のセル番地」を動的に取り出せます。</p>



<pre class="wp-block-code"><code>=SUM(INDIRECT(&quot;B2:&quot; &amp; CELL(&quot;address&quot;, INDEX(B:B, MATCH(&quot;合計&quot;, A:A, 0)))))</code></pre>



<p class="wp-block-paragraph">A列に「合計」という文字列が現れる行までのB列を合計します。データが増えても「合計」の位置に追従して集計範囲が自動で広がります。</p>



<h3 class="wp-block-heading"><span id="toc23">パターン7: Apps Scriptでシート名を取得する代替策</span></h3>



<p class="wp-block-paragraph">スプレッドシートのCELL関数は <code>"filename"</code> 非対応のため、シート名を直接取得できません。Apps Scriptのカスタム関数で代替するのが現実的な解です。</p>



<p class="wp-block-paragraph">メニュー「拡張機能」→「Apps Script」を開き、次のコードを貼り付けて保存します。</p>



<pre class="wp-block-code"><code>function SHEETNAME() {
  return SpreadsheetApp.getActiveSheet().getName();
}</code></pre>



<p class="wp-block-paragraph">スプレッドシートに戻って、任意のセルに <code>=SHEETNAME()</code> と入力するとシート名が表示されます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>カスタム関数はシート名が変わっても自動で再計算されません。手動で再計算したい場合は、関数の引数に <code>NOW()</code> などのダミーを渡す実装かトリガーで再計算を仕掛けてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc24">CELL関数のよくあるエラーと対処法</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>エラー・現象</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code></td><td>info_type のスペル誤り（例: <code>"adress"</code>）</td><td><code>"address"</code> の <code>d</code> は2つ。スペルを正確に書く</td></tr><tr><td><code>#VALUE!</code></td><td>スプレッドシートで非対応の info_type を使った</td><td><code>"filename"</code> <code>"format"</code> などは非対応。7種類の対応リストを確認する</td></tr><tr><td><code>#VALUE!</code></td><td>info_type をダブルクォートで囲み忘れた</td><td>必ず <code>"address"</code> のように文字列として渡す</td></tr><tr><td>値が更新されない</td><td>揮発性関数の再計算が遅れている</td><td>セルを再編集する、またはシートを再読み込み（Ctrl+R）する</td></tr><tr><td>範囲を渡したのに1つだけ返る</td><td>仕様：参照に範囲を指定すると左上セルだけが対象</td><td>1セルずつ指定するか、ARRAYFORMULAで配列化する</td></tr><tr><td><code>"type"</code> で日付が <code>v</code> になる</td><td>日付はシリアル値（内部的に数値）として管理されるため</td><td>日付判定は <a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a> を使う</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc25">CELL関数とExcel版の違い</span></h2>



<p class="wp-block-paragraph">スプレッドシートのCELL関数は、Excel版に比べて <strong>対応する info_type が大幅に少ない</strong> のが最大の違いです。</p>



<figure class="wp-block-table"><table><thead><tr><th>info_type</th><th>Excel</th><th>Googleスプレッドシート</th></tr></thead><tbody><tr><td><code>"address"</code> <code>"col"</code> <code>"row"</code> <code>"type"</code> <code>"width"</code> <code>"contents"</code> <code>"prefix"</code></td><td>対応</td><td>対応</td></tr><tr><td><code>"filename"</code></td><td>対応</td><td><strong>非対応</strong>（#VALUE!）</td></tr><tr><td><code>"format"</code></td><td>対応</td><td><strong>非対応</strong>（#VALUE!）</td></tr><tr><td><code>"color"</code> <code>"protect"</code> <code>"parentheses"</code></td><td>対応</td><td><strong>非対応</strong>（#VALUE!）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc26">filename と format の代替策</span></h3>



<ul class="wp-block-list"><li><strong><code>"filename"</code> の代替</strong>: Apps Script カスタム関数（<code>SpreadsheetApp.getActiveSheet().getName()</code>）</li><li><strong><code>"format"</code> の代替</strong>: Apps Scriptで <code>Range#getNumberFormat()</code> を使うカスタム関数、または日付判定は<a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a>を活用する</li></ul>



<p class="wp-block-paragraph">Excel版CELL関数の詳しい使い方は <a href="https://mashukabu.com/excel-function-howto-use-cell/">ExcelのCELL関数の使い方｜セルの書式・位置・ファイル名を取得する方法</a> で解説しています。</p>



<h2 class="wp-block-heading"><span id="toc27">CELL関数と似た関数の使い分け</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>取得できる情報</th><th>CELL関数との違い</th></tr></thead><tbody><tr><td><strong>CELL</strong></td><td>セル番地・行/列番号・データ型・列幅・プレフィックス</td><td>1関数で多種類の情報を取得</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-row-function/">ROW</a></td><td>行番号</td><td>row 引数より短い</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-column-function/">COLUMN</a></td><td>列番号</td><td>col 引数より短い</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-address-function/">ADDRESS</a></td><td>セル番地（文字列）</td><td>行番号・列番号から番地を組み立てる用途向け</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-isblank-function/">ISBLANK</a></td><td>空白かどうか</td><td>type=&#8221;b&#8221; の判定専用、意図が明確</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-isnumber-function/">ISNUMBER</a></td><td>数値かどうか</td><td>type=&#8221;v&#8221; の判定専用</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-istext-function/">ISTEXT</a></td><td>文字列かどうか</td><td>type=&#8221;l&#8221; の判定専用</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE</a></td><td>日付かどうか</td><td>type では区別できない日付判定が可能</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行番号・列番号だけ取得するなら ROW / COLUMN のほうがシンプルです。CELL関数を選ぶのは、address や type など他の情報と <strong>同じ書き方で並べたい</strong> とき、または3種類のデータ型を1数式で同時に分岐したいときです。</p>



<h2 class="wp-block-heading"><span id="toc28">よくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc29">CELL関数でファイル名やシート名を取得できますか？</span></h3>



<p class="wp-block-paragraph">いいえ、スプレッドシートのCELL関数では <code>"filename"</code> は <strong>非対応</strong> です。Excelでは使えますが、スプレッドシートでは <code>#VALUE!</code> エラーになります。シート名を取得したい場合は、Apps Scriptのカスタム関数（<code>SpreadsheetApp.getActiveSheet().getName()</code>）が現実的な代替策ですよ。</p>



<h3 class="wp-block-heading"><span id="toc30">CELL関数で複数セルの情報を一括取得できますか？</span></h3>



<p class="wp-block-paragraph">範囲を渡しても <strong>左上セルの情報しか返りません</strong>。複数セルに適用するには、<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a> で包むか（<code>=ARRAYFORMULA(CELL("row", A1:A5))</code> など）、行ごとに数式を入れてください。</p>



<h3 class="wp-block-heading"><span id="toc31">CELL(&#8220;type&#8221;, A1) で日付や TRUE/FALSE はどう判別されますか？</span></h3>



<p class="wp-block-paragraph">すべて <code>v</code>（数値）として返ります。日付やブール値は内部的にシリアル値・0/1 として管理されているためです。日付かどうかを判別したい場合は <a href="https://mashukabu.com/spreadsheet-isdate-function/">ISDATE関数</a> を使ってください。</p>



<h3 class="wp-block-heading"><span id="toc32">CELL関数は揮発性関数ですか？</span></h3>



<p class="wp-block-paragraph">はい、CELL関数は揮発性関数なので、シート上のどこかが再計算されるたびに評価されます。大量に使うとシートの動作が重くなります。行番号・列番号だけなら ROW / COLUMN、空白判定だけなら ISBLANK のように、<strong>専用関数で代用できないか</strong> を検討してくださいね。</p>



<h2 class="wp-block-heading"><span id="toc33">まとめ</span></h2>



<p class="wp-block-paragraph">スプレッドシートのCELL関数は、<strong>セル番地・行列番号・データ型・列幅などの情報を1関数でまとめて取り出せる</strong> 多機能な関数です。</p>



<ul class="wp-block-list"><li>構文は <code>=CELL(info_type, [参照])</code>。info_type には取得したい情報の種類を <strong>ダブルクォート付きの文字列</strong> で指定する</li><li>使える info_type は <strong>7種類</strong>（<code>"address"</code> <code>"col"</code> <code>"row"</code> <code>"type"</code> <code>"width"</code> <code>"contents"</code> <code>"prefix"</code>）</li><li><code>"address"</code> は <a href="https://mashukabu.com/spreadsheet-indirect-function/">INDIRECT関数</a> との組み合わせで <strong>動的なセル参照</strong> を実現できる</li><li><code>"type"</code> でデータ型を判別すると、計算式の分岐や入力ミス検出に応用できる</li><li>範囲を渡すと <strong>左上セルしか返らない</strong> ので、配列処理は <a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a> で包む</li><li>Excel版CELL関数で使える <code>"filename"</code> <code>"format"</code> などは <strong>スプレッドシートでは非対応</strong>。代替手段は Apps Script</li></ul>



<p class="wp-block-paragraph">まずは <code>=CELL("address", A1)</code> でセル番地を取得するところから試して、INDIRECTとの組み合わせまで広げてみてください。動的なセル参照が自在に書けるようになると、集計表のメンテがグッとラクになりますよ。</p>



<p class="wp-block-paragraph">関連記事: <a href="https://mashukabu.com/spreadsheet-indirect-function/">スプレッドシートのINDIRECT関数の使い方</a> / <a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方</a> / <a href="https://mashukabu.com/excel-function-howto-use-cell/">ExcelのCELL関数の使い方</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-cell-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのCELL関数の使い方｜検査の型12種を一覧表で完全解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-cell/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-cell/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 04 Sep 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[CELL関数]]></category>
		<category><![CDATA[セル情報]]></category>
		<category><![CDATA[ファイル名取得]]></category>
		<category><![CDATA[情報関数]]></category>
		<category><![CDATA[検査の型]]></category>
		<category><![CDATA[表示形式]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2305</guid>

					<description><![CDATA[ExcelのCELL関数の使い方を解説。12種類の検査の型（address・filename・format等）を一覧表で整理し、シート名の自動取得や書式判定など実務で使える活用パターンもまとめました。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「このセルの表示形式って何が設定されてるんだろう？」「ファイルのパスやシート名を数式で取得できないかな？」</p>



<p class="wp-block-paragraph">こんな疑問を持ったことはありませんか。セルの書式や位置、ファイル名といった&#8221;裏側の情報&#8221;を手作業で確認するのは面倒ですよね。ExcelのCELL関数を使えば、こうした情報を数式ひとつで取得できます。</p>



<p class="wp-block-paragraph">この記事では、CELL関数の基本的な使い方から12種類の検査の型の一覧、実務で役立つ活用パターンまでまとめて紹介します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>この記事は次のような人におすすめ<br>&#8211; セルの表示形式や書式を数式で調べたい<br>&#8211; ファイル名やシート名を自動取得したい<br>&#8211; セルの位置情報（行番号・列番号・アドレス）を取得したい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのCELL関数とは？</a><ol><li><a href="#toc2" tabindex="0">読み方・語源</a></li><li><a href="#toc3" tabindex="0">CELL関数でできること</a></li></ol></li><li><a href="#toc4" tabindex="0">CELL関数の書き方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc7" tabindex="0">CELL関数の検査の型一覧表</a><ol><li><a href="#toc8" tabindex="0">セルの位置情報を取得する型</a></li><li><a href="#toc9" tabindex="0">セルの書式・属性を取得する型</a></li><li><a href="#toc10" tabindex="0">セルの内容・ファイル情報を取得する型</a></li></ol></li><li><a href="#toc11" tabindex="0">基本的な使い方</a><ol><li><a href="#toc12" tabindex="0">セル番地を取得する（address）</a></li><li><a href="#toc13" tabindex="0">ファイル名とシート名を取得する（filename）</a></li><li><a href="#toc14" tabindex="0">表示形式を調べる（format）</a></li></ol></li><li><a href="#toc15" tabindex="0">実務で使える活用パターン</a><ol><li><a href="#toc16" tabindex="0">パターン1: シート名＋日付でヘッダーを自動生成する</a></li><li><a href="#toc17" tabindex="0">パターン2: 表示形式で日付かどうかを判定する</a></li><li><a href="#toc18" tabindex="0">パターン3: セルがロックされているか確認する</a></li><li><a href="#toc19" tabindex="0">パターン4: ファイルパスをフォルダ・ファイル名・シート名に分解する</a></li></ol></li><li><a href="#toc20" tabindex="0">formatの戻り値一覧</a><ol><li><a href="#toc21" tabindex="0">数値・通貨系</a></li><li><a href="#toc22" tabindex="0">日付・時刻系</a></li></ol></li><li><a href="#toc23" tabindex="0">prefixの戻り値一覧</a></li><li><a href="#toc24" tabindex="0">よくあるエラーと注意点</a><ol><li><a href="#toc25" tabindex="0">エラーと対処法</a></li><li><a href="#toc26" tabindex="0">使うときの注意点</a></li></ol></li><li><a href="#toc27" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc28" tabindex="0">CELL関数 vs TYPE関数</a></li><li><a href="#toc29" tabindex="0">CELL関数 vs ADDRESS関数</a></li><li><a href="#toc30" tabindex="0">CELL関数 vs ROW関数・COLUMN関数</a></li></ol></li><li><a href="#toc31" tabindex="0">まとめ</a><ol><li><a href="#toc32" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのCELL関数とは？</span></h2>



<h3 class="wp-block-heading"><span id="toc2">読み方・語源</span></h3>



<p class="wp-block-paragraph">読み方は「セル関数」です。英語の「cell（細胞・区画）」が語源で、Excelの「セル」と同じ意味ですね。</p>



<h3 class="wp-block-heading"><span id="toc3">CELL関数でできること</span></h3>



<p class="wp-block-paragraph">CELL関数は、指定したセルの<strong>書式・位置・内容などの情報を取得する</strong>関数です。</p>



<p class="wp-block-paragraph">たとえば「ファイル名を取得したい」「セル番地を文字列で取りたい」といった場面で使います。取得したい情報の種類は「検査の型」という引数で切り替えますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>CELL関数は Excel 2003 以降のすべてのバージョンで使えます。Microsoft 365 でも同じ書き方で動作します。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc4">CELL関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc5">基本構文</span></h3>



<pre class="wp-block-code"><code>=CELL(検査の型, [参照])</code></pre>



<h3 class="wp-block-heading"><span id="toc6">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>検査の型</td><td>必須</td><td>取得したい情報の種類を文字列で指定（例: <code>"address"</code>, <code>"filename"</code>）</td></tr><tr><td>参照</td><td>省略可</td><td>情報を取得するセルの参照。省略するとアクティブセルが対象</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「検査の型」は必ずダブルクォーテーションで囲みます。<code>=CELL("address", A1)</code> のように書いてください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>参照に範囲（例: <code>A1:C10</code>）を指定した場合は、範囲の<strong>左上のセル</strong>の情報だけが返ります。範囲全体の情報をまとめて取得することはできないので注意してくださいね。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc7">CELL関数の検査の型一覧表</span></h2>



<p class="wp-block-paragraph">CELL関数では、12種類の検査の型を使い分けます。用途別に3つのグループに分けて整理しました。</p>



<h3 class="wp-block-heading"><span id="toc8">セルの位置情報を取得する型</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>検査の型</th><th>戻り値</th><th>使用例</th></tr></thead><tbody><tr><td><code>"address"</code></td><td>セル番地を文字列で返す（例: <code>$A$1</code>）</td><td><code>=CELL("address", B3)</code> → <code>$B$3</code></td></tr><tr><td><code>"col"</code></td><td>列番号を返す</td><td><code>=CELL("col", C1)</code> → <code>3</code></td></tr><tr><td><code>"row"</code></td><td>行番号を返す</td><td><code>=CELL("row", A5)</code> → <code>5</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc9">セルの書式・属性を取得する型</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>検査の型</th><th>戻り値</th><th>使用例</th></tr></thead><tbody><tr><td><code>"format"</code></td><td>表示形式に対応する文字列コードを返す（<a href="#formatの戻り値一覧">詳細は後述</a>）</td><td><code>=CELL("format", A1)</code> → <code>"G"</code></td></tr><tr><td><code>"color"</code></td><td>負の数を色付き表示する書式なら <code>1</code>、それ以外は <code>0</code></td><td><code>=CELL("color", A1)</code> → <code>0</code></td></tr><tr><td><code>"protect"</code></td><td>セルがロックされていれば <code>1</code>、されていなければ <code>0</code></td><td><code>=CELL("protect", A1)</code> → <code>1</code></td></tr><tr><td><code>"parentheses"</code></td><td>正の値をかっこで囲む書式なら <code>1</code>、それ以外は <code>0</code></td><td><code>=CELL("parentheses", A1)</code> → <code>0</code></td></tr><tr><td><code>"prefix"</code></td><td>文字列の配置に応じた記号を返す（<a href="#prefixの戻り値一覧">詳細は後述</a>）</td><td><code>=CELL("prefix", A1)</code> → <code>'</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc10">セルの内容・ファイル情報を取得する型</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>検査の型</th><th>戻り値</th><th>使用例</th></tr></thead><tbody><tr><td><code>"contents"</code></td><td>セルの値をそのまま返す</td><td><code>=CELL("contents", A1)</code> → セルA1の値</td></tr><tr><td><code>"filename"</code></td><td>ファイルのフルパスを返す。未保存なら空文字</td><td><code>=CELL("filename", A1)</code> → <code>C:...[Book1.xlsx]Sheet1</code></td></tr><tr><td><code>"type"</code></td><td>値の種類を1文字で返す（<code>b</code>=空白, <code>l</code>=文字列, <code>v</code>=数値）</td><td><code>=CELL("type", A1)</code> → <code>"v"</code></td></tr><tr><td><code>"width"</code></td><td>列幅を整数で返す</td><td><code>=CELL("width", A1)</code> → <code>8</code></td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc11">基本的な使い方</span></h2>



<p class="wp-block-paragraph">ここからは、よく使う検査の型を実際の数式で確認していきましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">セル番地を取得する（address）</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;address&quot;, B3)</code></pre>



<p class="wp-block-paragraph">結果: <code>$B$3</code></p>



<p class="wp-block-paragraph">セル番地が<strong>絶対参照の文字列</strong>として返ります。この結果を<a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数</a>に渡せば、動的なセル参照を実現できますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>行番号だけ、列番号だけがほしい場合は <code>"row"</code> や <code>"col"</code> を使いましょう。<a href="https://mashukabu.com/excel-function-howto-use-address/">ADDRESS関数</a>のように参照形式を切り替える機能はありませんが、番号を取得するだけなら十分です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc13">ファイル名とシート名を取得する（filename）</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;filename&quot;, A1)</code></pre>



<p class="wp-block-paragraph">結果の例: <code>C:UsersuserDocuments[売上データ.xlsx]4月</code></p>



<p class="wp-block-paragraph">ファイルのフルパスが返ります。フォルダパス、ファイル名、シート名がまとめて1つの文字列になっているのがポイントです。</p>



<p class="wp-block-paragraph"><strong>シート名だけを抜き出したい場合</strong>は、次の数式を使います。</p>



<pre class="wp-block-code"><code>=MID(CELL(&quot;filename&quot;,A1),FIND(&quot;]&quot;,CELL(&quot;filename&quot;,A1))+1,255)</code></pre>



<p class="wp-block-paragraph"><code>]</code> の位置を FIND関数（文字列の検索位置を返す関数）で探して、その右側を <a href="https://mashukabu.com/excel-function-howto-use-mid/">MID関数</a>で取り出しています。複数シートの管理表を作るときに重宝しますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ファイルが未保存（新規ブック）の場合は空文字 <code>""</code> が返ります。ファイルを一度保存してから使ってくださいね。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">表示形式を調べる（format）</span></h3>



<pre class="wp-block-code"><code>=CELL(&quot;format&quot;, A1)</code></pre>



<p class="wp-block-paragraph">セルの表示形式に対応するコード文字列が返ります。たとえば標準なら <code>"G"</code>、パーセントなら <code>"P0"</code> です。</p>



<p class="wp-block-paragraph">「どんな書式が設定されているか、数式で判定したい」ときに使えます。条件付き書式やVBAを使わずに書式チェックができるので便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc15">実務で使える活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc16">パターン1: シート名＋日付でヘッダーを自動生成する</span></h3>



<p class="wp-block-paragraph">月別シート（4月、5月、6月&#8230;）の帳票で、ヘッダーに「4月度 売上報告（2026/03/22更新）」のような文字列を自動表示したいことがありますよね。</p>



<pre class="wp-block-code"><code>=MID(CELL(&quot;filename&quot;,A1),FIND(&quot;]&quot;,CELL(&quot;filename&quot;,A1))+1,255)&amp;&quot;度 売上報告（&quot;&amp;TEXT(TODAY(),&quot;yyyy/mm/dd&quot;)&amp;&quot;更新）&quot;</code></pre>



<p class="wp-block-paragraph">シート名と更新日が自動で反映されるので、手動でヘッダーを書き換える手間がなくなります。<a href="https://mashukabu.com/excel-function-howto-use-text/">TEXT関数</a>と組み合わせれば、日付の表示形式も自由に変更できますよ。</p>



<h3 class="wp-block-heading"><span id="toc17">パターン2: 表示形式で日付かどうかを判定する</span></h3>



<p class="wp-block-paragraph">数値セルに「日付形式」が設定されているかどうかを判定する例です。</p>



<pre class="wp-block-code"><code>=IF(LEFT(CELL(&quot;format&quot;,A1),1)=&quot;D&quot;,&quot;日付形式&quot;,&quot;日付以外&quot;)</code></pre>



<p class="wp-block-paragraph"><code>"format"</code> の戻り値が <code>"D"</code> で始まれば日付形式です。「この列は日付なのか数値なのか」を自動判定したいときに活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc18">パターン3: セルがロックされているか確認する</span></h3>



<p class="wp-block-paragraph">シートの保護をかける前に、ロック設定を一覧で確認したいときに使えます。</p>



<pre class="wp-block-code"><code>=IF(CELL(&quot;protect&quot;,A1)=1,&quot;ロック済み&quot;,&quot;ロック解除&quot;)</code></pre>



<p class="wp-block-paragraph">保護をかけたあとに「あれ、このセルは入力できるようにしたはず」というトラブルを防げますよ。</p>



<h3 class="wp-block-heading"><span id="toc19">パターン4: ファイルパスをフォルダ・ファイル名・シート名に分解する</span></h3>



<p class="wp-block-paragraph">CELL関数の <code>"filename"</code> の結果を3つの部分に分解するテクニックです。</p>



<pre class="wp-block-code"><code>フォルダパス: =LEFT(CELL(&quot;filename&quot;,A1),FIND(&quot;[&quot;,CELL(&quot;filename&quot;,A1))-1)
ファイル名:   =MID(CELL(&quot;filename&quot;,A1),FIND(&quot;[&quot;,CELL(&quot;filename&quot;,A1))+1,FIND(&quot;]&quot;,CELL(&quot;filename&quot;,A1))-FIND(&quot;[&quot;,CELL(&quot;filename&quot;,A1))-1)
シート名:     =MID(CELL(&quot;filename&quot;,A1),FIND(&quot;]&quot;,CELL(&quot;filename&quot;,A1))+1,255)</code></pre>



<p class="wp-block-paragraph"><code>[</code> と <code>]</code> の位置を基準にして切り分けています。ファイル管理表を作るときにまとめて使うと便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc20">formatの戻り値一覧</span></h2>



<p class="wp-block-paragraph"><code>=CELL("format", 参照)</code> で返るコード文字列の一覧です。表示形式ごとに異なるコードが返ります。</p>



<h3 class="wp-block-heading"><span id="toc21">数値・通貨系</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>表示形式</th><th>戻り値</th><th>説明</th></tr></thead><tbody><tr><td>標準</td><td><code>G</code></td><td>デフォルトの表示形式</td></tr><tr><td><code>0</code></td><td><code>F0</code></td><td>小数なし</td></tr><tr><td><code>0.00</code></td><td><code>F2</code></td><td>小数2桁</td></tr><tr><td><code>#,##0</code></td><td><code>,0</code></td><td>桁区切り・小数なし</td></tr><tr><td><code>#,##0.00</code></td><td><code>,2</code></td><td>桁区切り・小数2桁</td></tr><tr><td><code>$#,##0_);($#,##0)</code></td><td><code>C0</code></td><td>通貨・小数なし</td></tr><tr><td><code>$#,##0_);<a href="$#,##0">赤</a></code></td><td><code>C0-</code></td><td>通貨・負の数が赤</td></tr><tr><td><code>$#,##0.00_);($#,##0.00)</code></td><td><code>C2</code></td><td>通貨・小数2桁</td></tr><tr><td><code>$#,##0.00_);<a href="$#,##0.00">赤</a></code></td><td><code>C2-</code></td><td>通貨・負の数が赤</td></tr><tr><td><code>0%</code></td><td><code>P0</code></td><td>パーセント・小数なし</td></tr><tr><td><code>0.00%</code></td><td><code>P2</code></td><td>パーセント・小数2桁</td></tr><tr><td><code>0.00E+00</code></td><td><code>S2</code></td><td>指数表示</td></tr><tr><td><code># ?/?</code> または <code># ??/??</code></td><td><code>G</code></td><td>分数</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc22">日付・時刻系</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>表示形式</th><th>戻り値</th><th>説明</th></tr></thead><tbody><tr><td><code>m/d/yy</code> <code>m/d/yy h:mm</code> <code>mm/dd/yy</code></td><td><code>D4</code></td><td>日付（スラッシュ区切り）</td></tr><tr><td><code>d-mmm-yy</code> <code>dd-mmm-yy</code></td><td><code>D1</code></td><td>日付（英語月略称）</td></tr><tr><td><code>d-mmm</code> <code>dd-mmm</code></td><td><code>D2</code></td><td>日付（日-月のみ）</td></tr><tr><td><code>mmm-yy</code></td><td><code>D3</code></td><td>日付（月-年）</td></tr><tr><td><code>mm/dd</code></td><td><code>D5</code></td><td>日付（月/日のみ）</td></tr><tr><td><code>h:mm AM/PM</code></td><td><code>D7</code></td><td>時刻（12時間制）</td></tr><tr><td><code>h:mm:ss AM/PM</code></td><td><code>D6</code></td><td>時刻（12時間制・秒あり）</td></tr><tr><td><code>h:mm</code></td><td><code>D9</code></td><td>時刻（24時間制）</td></tr><tr><td><code>h:mm:ss</code></td><td><code>D8</code></td><td>時刻（24時間制・秒あり）</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>戻り値が <code>D</code> で始まっていれば日付・時刻系の書式です。<code>LEFT(CELL("format",A1),1)="D"</code> で日付かどうかを判定できますよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc23">prefixの戻り値一覧</span></h2>



<p class="wp-block-paragraph"><code>=CELL("prefix", 参照)</code> で返る記号の一覧です。セル内の文字列の配置（文字寄せ）に対応しています。</p>



<figure class="wp-block-table"><table><thead><tr><th>文字の配置</th><th>戻り値</th><th>記号の名前</th></tr></thead><tbody><tr><td>左詰め</td><td><code>'</code></td><td>シングルクォーテーション</td></tr><tr><td>右詰め</td><td><code>"</code></td><td>ダブルクォーテーション</td></tr><tr><td>中央揃え</td><td><code>^</code></td><td>キャレット</td></tr><tr><td>両端揃え</td><td><code></code></td><td>バックスラッシュ</td></tr><tr><td>文字列以外のデータ</td><td>（空文字）</td><td>&#8211;</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p><code>"prefix"</code> はセルに文字列が入っているときだけ配置記号を返します。数値や数式の結果が入っているセルでは空文字が返りますよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc24">よくあるエラーと注意点</span></h2>



<h3 class="wp-block-heading"><span id="toc25">エラーと対処法</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code> エラー</td><td>検査の型のスペルミス（例: <code>"adress"</code>）</td><td>正しいスペルを確認してください。<code>"address"</code> の <code>d</code> は2つです</td></tr><tr><td>空文字が返る</td><td><code>"filename"</code> で未保存ファイルを参照した</td><td>ファイルを一度保存してから再計算してください</td></tr><tr><td>値が更新されない</td><td>手動計算モードになっている</td><td><code>Ctrl + Shift + F9</code> で強制再計算するか、自動計算モードに切り替えてください</td></tr><tr><td>範囲を指定したのに1つしか返らない</td><td>参照に範囲を指定すると左上セルの情報だけ返る仕様</td><td>セルを1つずつ指定してください</td></tr><tr><td><code>"type"</code> で <code>"v"</code> が返るのに計算できない</td><td>日付シリアル値も <code>"v"</code>（数値）として扱われる</td><td>日付かどうかは <code>"format"</code> の戻り値で判定してください</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc26">使うときの注意点</span></h3>



<p class="wp-block-paragraph">CELL関数を使うときに知っておきたいポイントを3つ紹介します。</p>



<ul class="wp-block-list"><li><strong>揮発性関数であること</strong>: シート上のどこかが変更されるたびに再計算されます。大量に使うとExcelの動作が重くなることがあるので、必要なセルだけに絞って使いましょう。</li><li><strong>参照を省略するとアクティブセルが対象になる</strong>: セルを選択するたびに結果が変わります。参照は明示的に指定しておくのがおすすめです。</li><li><strong>書式変更だけでは結果が更新されないことがある</strong>: <code>F9</code> キーで再計算するか、<code>Ctrl + Shift + F9</code> で強制再計算してみてください。</li></ul>



<h2 class="wp-block-heading"><span id="toc27">似た関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">CELL関数に似た機能を持つ関数がいくつかあります。「どれを使えばいいの？」と迷ったときの判断基準をまとめました。</p>



<h3 class="wp-block-heading"><span id="toc28">CELL関数 vs TYPE関数</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>CELL関数</th><th><a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数</a></th></tr></thead><tbody><tr><td>目的</td><td>セルの書式・位置・内容などの<strong>総合情報</strong>を取得</td><td>セルの<strong>データ型だけ</strong>を判別</td></tr><tr><td>戻り値</td><td>検査の型ごとに文字列・数値が変わる</td><td>数値コード（1=数値, 2=文字列, 4=論理値, 16=エラー, 64=配列）</td></tr><tr><td>データ型の判別</td><td><code>"type"</code> で大まかに判別（b/l/vの3種類）</td><td>5種類を細かく判別</td></tr><tr><td>使い分け</td><td>セルの「書式」「位置」「ファイル名」が必要なとき</td><td>セルの「データの種類」を正確に知りたいとき</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>データ型を詳しく調べたいなら<a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数</a>がおすすめです。CELL関数の <code>"type"</code> は空白・文字列・それ以外の3分類しかできません。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc29">CELL関数 vs ADDRESS関数</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>CELL関数</th><th><a href="https://mashukabu.com/excel-function-howto-use-address/">ADDRESS関数</a></th></tr></thead><tbody><tr><td>セル番地の取得</td><td><code>"address"</code> で既存セルの番地を文字列で取得</td><td>行番号と列番号を指定して番地を<strong>生成</strong></td></tr><tr><td>参照形式の指定</td><td>絶対参照のみ（<code>$A$1</code>形式固定）</td><td>絶対・相対・混合を自由に切り替え可能</td></tr><tr><td>シート名の付加</td><td>不可</td><td>第5引数でシート名を指定可能</td></tr><tr><td>使い分け</td><td>既存セルの情報を調べたいとき</td><td>行列番号からセル番地を組み立てたいとき</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc30">CELL関数 vs ROW関数・COLUMN関数</span></h3>



<p class="wp-block-paragraph">行番号・列番号を取得するだけなら、<a href="https://mashukabu.com/excel-function-howto-use-row/">ROW関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-column/">COLUMN関数</a>のほうがシンプルです。</p>



<pre class="wp-block-code"><code>=CELL(&quot;row&quot;, A5)    '→ 5（CELL関数で行番号）
=ROW(A5)            '→ 5（ROW関数で行番号）</code></pre>



<p class="wp-block-paragraph">結果は同じですが、ROW関数のほうが短く書けます。CELL関数は「行番号以外の情報も同時に使う場面」で選んでみてください。</p>



<h2 class="wp-block-heading"><span id="toc31">まとめ</span></h2>



<p class="wp-block-paragraph">ExcelのCELL関数は、セルの書式・位置・ファイル名などの情報を取得する関数です。</p>



<ul class="wp-block-list"><li>12種類の「検査の型」で取得する情報を切り替える</li><li><code>"filename"</code> でファイルパスとシート名を取得できる</li><li><code>"format"</code> でセルの表示形式コードを判定できる</li><li><code>"address"</code> / <code>"row"</code> / <code>"col"</code> でセルの位置情報を取得できる</li><li>揮発性関数なので、大量に使うとパフォーマンスに影響する</li></ul>



<p class="wp-block-paragraph">データ型を詳しく判別したい場合は<a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数</a>、行列番号からセル番地を生成したい場合は<a href="https://mashukabu.com/excel-function-howto-use-address/">ADDRESS関数</a>もあわせてチェックしてみてください。</p>



<h3 class="wp-block-heading"><span id="toc32">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-type/">TYPE関数の使い方｜データ型を数値コードで判別する</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-address/">ADDRESS関数の使い方｜行番号と列番号からセル番地を生成する</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-indirect/">INDIRECT関数の使い方｜文字列をセル参照に変換する</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-row/">ROW関数の使い方｜行番号の取得から連番・応用まで解説</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-column/">COLUMN関数の使い方｜列番号を調べる</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-mid/">MID関数の使い方｜文字列の途中から文字を取り出す</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-text/">TEXT関数の使い方｜表示形式コードで日付・数値を自在に変換</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-cell/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
