<?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/%e9%9d%9e%e6%8e%a8%e5%a5%a8%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Tue, 26 May 2026 10:47:17 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</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>ExcelのLENB関数の使い方｜バイト数をカウントしてLENと使い分ける方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-lenb/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-lenb/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 15:38:07 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[LEFTB関数]]></category>
		<category><![CDATA[LENB関数]]></category>
		<category><![CDATA[LEN関数]]></category>
		<category><![CDATA[MIDB関数]]></category>
		<category><![CDATA[データバリデーション]]></category>
		<category><![CDATA[バイト数]]></category>
		<category><![CDATA[全角半角]]></category>
		<category><![CDATA[文字列関数]]></category>
		<category><![CDATA[非推奨関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5819</guid>

					<description><![CDATA[ExcelのLENB関数でバイト数をカウントする使い方をわかりやすく解説。LEN関数との違い・全角半角の判定方法・バイト数制限チェックの実例を紹介。非推奨でも直接入力すれば使える現状も整理。]]></description>
										<content:encoded><![CDATA[

  <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">LENB関数とは？バイト数を返すExcelの関数</a><ol><li><a href="#toc2" tabindex="0">LENB関数の構文と引数</a></li><li><a href="#toc3" tabindex="0">日本語環境での動作：全角＝2バイト・半角＝1バイト</a></li></ol></li><li><a href="#toc4" tabindex="0">LENとLENBの違いを比較表で確認</a><ol><li><a href="#toc5" tabindex="0">文字数とバイト数の違い</a></li><li><a href="#toc6" tabindex="0">LENかLENBか：使い分けの判断基準</a></li><li><a href="#toc7" tabindex="0">LEN vs LENB 比較表</a></li><li><a href="#toc8" tabindex="0">全角文字数・半角文字数を計算する応用式</a></li></ol></li><li><a href="#toc9" tabindex="0">LENB関数は非推奨？現状と使い方のスタンス</a><ol><li><a href="#toc10" tabindex="0">Microsoft公式の「非推奨」表記の意味</a></li><li><a href="#toc11" tabindex="0">現時点で使えるか・いつまで使えるか</a></li><li><a href="#toc12" tabindex="0">非推奨でも役立つ場面</a></li></ol></li><li><a href="#toc13" tabindex="0">LENB関数の実務活用パターン3選</a><ol><li><a href="#toc14" tabindex="0">バイト数制限チェック（固定長データ・フォームバリデーション）</a></li><li><a href="#toc15" tabindex="0">全角・半角の混在チェック（LENBとLENの差分を活用）</a></li><li><a href="#toc16" tabindex="0">入力規則でバイト数制限を設定する方法</a></li></ol></li><li><a href="#toc17" tabindex="0">バイト系関数ファミリー一覧（LEFTB・MIDB・RIGHTB）</a><ol><li><a href="#toc18" tabindex="0">各関数の構文と用途</a></li><li><a href="#toc19" tabindex="0">固定長フォーマットの分割・抽出パターン</a></li></ol></li><li><a href="#toc20" tabindex="0">LENB関数を使うときの注意点</a><ol><li><a href="#toc21" tabindex="0">SBCS環境（英語OS）ではLENと同じ結果になる</a></li><li><a href="#toc22" tabindex="0">LENBが返すのはShift-JIS換算のバイト数</a></li></ol></li><li><a href="#toc23" tabindex="0">LENB関数に関するよくある質問（FAQ）</a><ol><li><a href="#toc24" tabindex="0">Q1. GoogleスプレッドシートでもExcelと同じように使えますか？</a></li><li><a href="#toc25" tabindex="0">Q2. サロゲートペア文字（絵文字など）のバイト数はどうなりますか？</a></li><li><a href="#toc26" tabindex="0">Q3. 全銀フォーマット以外でLENBが必要になる場面はありますか？</a></li><li><a href="#toc27" tabindex="0">Q4. LENBが非推奨になった後、代替方法はありますか？</a></li><li><a href="#toc28" tabindex="0">Q5. UTF-8のバイト数を正確に計算するにはどうすればいいですか？</a></li></ol></li><li><a href="#toc29" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">LENB関数とは？バイト数を返すExcelの関数</span></h2>



<p class="wp-block-paragraph">LENB関数（読み方：レンビー）は、文字列のバイト数を返すExcel関数です。関数名は「LEN（Length＝長さ）+ B（Byte＝バイト）」に由来します。</p>



<p class="wp-block-paragraph">「この入力フォーム、全角20文字以内って言われたけど半角も混ざってる……」。全角と半角が混在するデータのバイト数を調べたい場面、ありますよね。文字数なら<a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>で一発ですが、バイト数は数えてくれません。そんなときに使えるのがExcelのLENB関数です。LENB関数を使えば、全角を2バイト・半角を1バイトとしてカウントできます。この記事ではLENB関数の基本から、LENとの違い、実務で役立つ活用パターンまで解説します。</p>



<h3 class="wp-block-heading"><span id="toc2">LENB関数の構文と引数</span></h3>



<pre class="wp-block-code"><code>=LENB(文字列)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>文字列</td><td>必須</td><td>バイト数を調べたいテキスト、またはセル参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけ。<a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>と同じ形なので、覚えやすいですよ。</p>



<p class="wp-block-paragraph">空のセルや空文字列 <code>""</code> を渡した場合は「0」を返します。数値を渡すと文字列として扱われ、<code>=LENB(123)</code> は「3」になります。エラー値を渡した場合はそのままエラーが返るので注意してください。</p>



<h3 class="wp-block-heading"><span id="toc3">日本語環境での動作：全角＝2バイト・半角＝1バイト</span></h3>



<p class="wp-block-paragraph">LENB関数のポイントは、全角文字と半角文字でカウントが変わることです。日本語環境では次のルールで計算されます。</p>



<ul class="wp-block-list"><li>全角文字（ひらがな・カタカナ・漢字など）: <strong>1文字＝2バイト</strong></li><li>半角文字（英数字・半角カナなど）: <strong>1文字＝1バイト</strong></li></ul>



<p class="wp-block-paragraph">セルA1に「あいう」と入っているとします。</p>



<pre class="wp-block-code"><code>=LENB(A1)</code></pre>



<p class="wp-block-paragraph">結果は「6」です。全角3文字×2バイト＝6バイトですね。「ABC」の場合は半角3文字×1バイトで「3」になります。</p>



<p class="wp-block-paragraph">この動作はDBCS（2バイト文字セット）環境の挙動です。日本語・中国語・韓国語がOSの既定言語に設定されている場合に適用されます。英語など上記以外のOSを使っている場合、LENBはLENと同じ動作になります。この違いについては後ほど「注意点」で詳しく説明しますね。</p>



<h2 class="wp-block-heading"><span id="toc4">LENとLENBの違いを比較表で確認</span></h2>



<h3 class="wp-block-heading"><span id="toc5">文字数とバイト数の違い</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>は文字数を返します。全角でも半角でも1文字は1文字です。一方、LENB関数はバイト数を返します。全角は2バイト、半角は1バイトとカウントされます。</p>



<p class="wp-block-paragraph">つまり、半角だけの文字列ならLENもLENBも同じ値になります。全角が混ざると、LENBのほうが大きい値を返すわけです。この差を利用すれば、全角文字数や半角文字数も計算できますよ。</p>



<h3 class="wp-block-heading"><span id="toc6">LENかLENBか：使い分けの判断基準</span></h3>



<p class="wp-block-paragraph">LENとLENBのどちらを使うか迷ったときは、次の基準で判断してください。</p>



<figure class="wp-block-table"><table><thead><tr><th>知りたいこと</th><th>使う関数</th></tr></thead><tbody><tr><td>見た目の文字数（画面表示・印刷）</td><td>LEN関数</td></tr><tr><td>システム登録・ファイル出力のバイト数</td><td>LENB関数</td></tr><tr><td>全角/半角の混在チェック</td><td>LENB関数（LENとの差分を活用）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日常的な文字カウントや表示用の集計にはLEN関数を使います。Shift-JISベースの社内システムへの登録データや、固定長フォーマットのファイル出力ではLENB関数の出番です。バイト数制限がある場合に正確なチェックができます。入力データに全角が混じっていないかチェックしたい場合も、LENB関数が役立ちます。</p>



<h3 class="wp-block-heading"><span id="toc7">LEN vs LENB 比較表</span></h3>



<p class="wp-block-paragraph">具体的な文字列で比較してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>文字列</th><th>LEN</th><th>LENB</th><th>差分</th></tr></thead><tbody><tr><td><code>"ABC"</code></td><td>3</td><td>3</td><td>0</td></tr><tr><td><code>"あいう"</code></td><td>3</td><td>6</td><td>3</td></tr><tr><td><code>"ABC123"</code></td><td>6</td><td>6</td><td>0</td></tr><tr><td><code>"あBC1"</code></td><td>4</td><td>5</td><td>1</td></tr><tr><td><code>"東京 Tokyo"</code></td><td>8</td><td>10</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">差分（LENB − LEN）が0なら半角のみ、0より大きければ全角が含まれています。「東京 Tokyo」の場合、全角2文字分の差分「2」が出ていますね。スペースは半角なので、1バイトとしてカウントされていますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">全角文字数・半角文字数を計算する応用式</span></h3>



<p class="wp-block-paragraph">LENBとLENの結果を組み合わせると、全角文字数と半角文字数を個別に求められます。</p>



<p class="wp-block-paragraph"><strong>全角文字数を求める式:</strong></p>



<p class="wp-block-paragraph">セルA1に計算したい文字列が入っているとします。</p>



<pre class="wp-block-code"><code>=LENB(A1)-LEN(A1)</code></pre>



<p class="wp-block-paragraph">LENBとLENの差分が全角文字数になります。「あBC1」なら差分「1」が全角文字数です。</p>



<p class="wp-block-paragraph"><strong>半角文字数を求める式:</strong></p>



<pre class="wp-block-code"><code>=LEN(A1)*2-LENB(A1)</code></pre>



<p class="wp-block-paragraph">LENを2倍した値からLENBを引くと半角文字数になります。「あBC1」なら4×2−5＝3が半角文字数です。「B」「C」「1」の3文字ですね。</p>



<p class="wp-block-paragraph">この計算式は全角・半角の混在チェックでよく使うので、覚えておくと便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc9">LENB関数は非推奨？現状と使い方のスタンス</span></h2>



<h3 class="wp-block-heading"><span id="toc10">Microsoft公式の「非推奨」表記の意味</span></h3>



<p class="wp-block-paragraph">Microsoft公式ドキュメントには「LENB関数は非推奨です。」と明記されています。2025年2月ごろからInsider版ではオートコンプリート候補にも表示されなくなりました。</p>



<p class="wp-block-paragraph">非推奨になった理由は、LEN関数のVersion 2（互換性バージョン2）にあります。Version 2ではサロゲートペア（絵文字などの特殊文字）に対応しました。Microsoftとしては、バイト系関数の役割はVersion 2で代替できると判断したわけですね。</p>



<h3 class="wp-block-heading"><span id="toc11">現時点で使えるか・いつまで使えるか</span></h3>



<p class="wp-block-paragraph">結論から言うと、現時点では問題なく使えます。オートコンプリートには表示されませんが、セルに直接 <code>=LENB(A1)</code> と入力すれば動作します。DATEDIF関数と同じ「隠れた関数」のような扱いです。</p>



<p class="wp-block-paragraph">既存のブックに入っているLENB関数が壊れることもありません。過去に作成したファイルもそのまま使い続けられます。ただし、将来のアップデートで完全に削除される可能性はゼロではありません。新規で数式を組む場合はその点を頭に入れておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">非推奨でも役立つ場面</span></h3>



<p class="wp-block-paragraph">「非推奨ならもう使わなくていいのでは？」と思うかもしれません。しかし、バイト数を返す代替関数はMicrosoftから公式に提供されていません。</p>



<p class="wp-block-paragraph">Shift-JIS換算のバイト数を調べたい場面では、LENB関数が唯一の手段です。固定長フォーマットのデータ処理や、バイト数制限のあるシステム連携では引き続きLENBが必要になります。非推奨とはいえ代替が効かない場面がある関数なので、必要なときは積極的に使ってみてください。</p>



<h2 class="wp-block-heading"><span id="toc13">LENB関数の実務活用パターン3選</span></h2>



<h3 class="wp-block-heading"><span id="toc14">バイト数制限チェック（固定長データ・フォームバリデーション）</span></h3>



<p class="wp-block-paragraph">社内システムへの登録データに「20バイト以内」のような制限がある場合があります。LENB関数と<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>を組み合わせてチェックできます。</p>



<p class="wp-block-paragraph">セルA1に登録したいデータが入っているとします。</p>



<pre class="wp-block-code"><code>=IF(LENB(A1)&gt;20,&quot;超過&quot;,&quot;OK&quot;)</code></pre>



<p class="wp-block-paragraph">バイト数が20を超えていれば「超過」、以内なら「OK」と表示されます。全角10文字で20バイトなので、全角11文字以上が入ると「超過」になりますね。半角なら20文字まで入力できます。</p>



<p class="wp-block-paragraph">このようなバイト数チェックが必要になる代表的な場面が、金融機関向けの全銀フォーマットや官公庁の固定長データです。全銀フォーマットでは振込先名義が「半角30バイト以内」と決められています。社内システムでは氏名フィールドが「全角10文字（20バイト）以内」のように制限される場合も多いです。データ作成前にLENBでバイト数を確認しておくと、登録エラーを未然に防げますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>場面</th><th>バイト数制限</th><th>チェック数式</th></tr></thead><tbody><tr><td>振込先名義（全銀形式）</td><td>半角30バイト以内</td><td><code>=IF(LENB(A1)>30,"超過","OK")</code></td></tr><tr><td>社内システム氏名登録</td><td>全角10文字（20バイト）以内</td><td><code>=IF(LENB(A1)>20,"超過","OK")</code></td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc15">全角・半角の混在チェック（LENBとLENの差分を活用）</span></h3>



<p class="wp-block-paragraph">入力データが半角のみかどうかを判定したい場面も多いですよね。LENBとLENの値が一致すれば半角のみ、一致しなければ全角が含まれていると分かります。</p>



<p class="wp-block-paragraph">セルA1に確認したいデータが入っているとします。</p>



<p class="wp-block-paragraph"><strong>全角が含まれているかチェック:</strong></p>



<pre class="wp-block-code"><code>=IF(LENB(A1)&gt;LEN(A1),&quot;全角あり&quot;,&quot;半角のみ&quot;)</code></pre>



<p class="wp-block-paragraph"><strong>半角のみかチェック:</strong></p>



<pre class="wp-block-code"><code>=IF(LEN(A1)=LENB(A1),&quot;半角のみ&quot;,&quot;全角含む&quot;)</code></pre>



<p class="wp-block-paragraph">半角のみで入力してほしいフィールドのバリデーションに使えます。たとえばメールアドレスは半角英数字・記号のみで構成されます。全角が混じっていると送信エラーの原因になります。<code>=IF(LEN(A1)=LENB(A1),"OK","全角含む")</code> で事前にチェックできますよ。社員コードや商品コードなど、半角英数のみを許容するフィールドにも同じ考え方で使えます。</p>



<h3 class="wp-block-heading"><span id="toc16">入力規則でバイト数制限を設定する方法</span></h3>



<p class="wp-block-paragraph">Excelの「データの入力規則」機能と組み合わせると、バイト数制限をセルに直接設定できます。</p>



<p class="wp-block-paragraph">全角のみの入力を許可したい場合は次の数式を使います。制限をかけたいセル範囲の先頭セルをA1とします。</p>



<pre class="wp-block-code"><code>=LEN(A1)*2=LENB(A1)</code></pre>



<p class="wp-block-paragraph">この数式がTRUEを返すのは、すべての文字が全角（1文字＝2バイト）のときだけです。設定手順は以下のとおりです。</p>



<ol class="wp-block-list"><li>制限をかけたいセル範囲を選択</li><li>「データ」タブ →「データの入力規則」をクリック</li><li>「設定」タブで「入力値の種類」を「ユーザー設定」に変更</li><li>「数式」欄に <code>=LEN(A1)*2=LENB(A1)</code> を入力（A1は範囲の先頭セルに合わせる）</li><li>「エラーメッセージ」タブでメッセージを設定</li></ol>



<p class="wp-block-paragraph">全角以外の文字が入力されるとエラーが表示されます。バイト数の上限を設定したい場合は <code>=LENB(A1)<=20</code> のような数式に変えてみてください。</p>



<h2 class="wp-block-heading"><span id="toc17">バイト系関数ファミリー一覧（LEFTB・MIDB・RIGHTB）</span></h2>



<h3 class="wp-block-heading"><span id="toc18">各関数の構文と用途</span></h3>



<p class="wp-block-paragraph">LENB関数と同じくバイト単位で動作する関数が3つあります。いずれもMicrosoft公式で非推奨と明記されていますが、LENB同様に直接入力すれば使えます。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>構文</th><th>用途</th><th>非推奨後の代替</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-leftb-function/">LEFTB</a></td><td><code>=LEFTB(文字列, バイト数)</code></td><td>先頭からバイト数分を抽出</td><td><a href="https://mashukabu.com/excel-function-howto-use-left/">LEFT関数</a>（Version 2）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-midb/">MIDB</a></td><td><code>=MIDB(文字列, 開始位置, バイト数)</code></td><td>指定位置からバイト数分を抽出</td><td>MID（Version 2）</td></tr><tr><td><a href="https://mashukabu.com/excel-rightb-function/">RIGHTB</a></td><td><code>=RIGHTB(文字列, バイト数)</code></td><td>末尾からバイト数分を抽出</td><td>RIGHT（Version 2）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">LEFT / MID / RIGHT が「文字数」で区切るのに対し、LEFTB / MIDB / RIGHTB は「バイト数」で区切ります。固定長フォーマットのデータを扱うときに欠かせない関数ファミリーですよ。</p>



<h3 class="wp-block-heading"><span id="toc19">固定長フォーマットの分割・抽出パターン</span></h3>



<p class="wp-block-paragraph">銀行の全銀フォーマットや官公庁の固定長データを扱う場面で活躍します。「先頭10バイトが名前、次の5バイトがコード」のように、位置とバイト数が決まった構造のデータを分割するときに便利ですよ。</p>



<p class="wp-block-paragraph">セルA1に固定長の文字列が入っているとします。</p>



<p class="wp-block-paragraph"><strong>先頭10バイトを取り出す:</strong></p>



<pre class="wp-block-code"><code>=LEFTB(A1,10)</code></pre>



<p class="wp-block-paragraph"><strong>11バイト目から5バイト分を抽出する:</strong></p>



<pre class="wp-block-code"><code>=MIDB(A1,11,5)</code></pre>



<p class="wp-block-paragraph"><strong>末尾4バイトを取り出す:</strong></p>



<pre class="wp-block-code"><code>=RIGHTB(A1,4)</code></pre>



<p class="wp-block-paragraph">LENB関数でまず全体のバイト数を確認します。そのあとLEFTB・<a href="https://mashukabu.com/excel-function-howto-use-midb/">MIDB</a>・RIGHTBで区切るという流れが定番パターンです。固定長データを扱うことがあれば、セットで覚えておくと便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc20">LENB関数を使うときの注意点</span></h2>



<h3 class="wp-block-heading"><span id="toc21">SBCS環境（英語OS）ではLENと同じ結果になる</span></h3>



<p class="wp-block-paragraph">LENB関数の動作はOSの既定言語に依存します。日本語・中国語・韓国語がOSの既定言語なら、全角＝2バイト・半角＝1バイトで正しく動きます。</p>



<p class="wp-block-paragraph">しかし、英語など上記以外の言語が既定の場合、LENBはLENと同じ動作になります。<code>=LENB("あ")</code> が「2」ではなく「1」を返してしまうのです。</p>



<p class="wp-block-paragraph">この動作はExcelの言語設定ではなく、OSの既定言語で決まります。Windowsの場合は「地域と言語」の管理用言語が該当します。海外拠点のPCで日本語データを扱う場合に起こりやすいトラブルです。英語版WindowsにExcelだけ日本語で入れている場合も同様です。LENB関数が期待どおりの値を返さないときは、OSの言語設定を確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc22">LENBが返すのはShift-JIS換算のバイト数</span></h3>



<p class="wp-block-paragraph">LENB関数が返すバイト数は、Shift-JIS（シフトジス）という文字コード換算の値です。全角1文字＝2バイト、半角1文字＝1バイトというルールはShift-JISの仕様に基づいています。</p>



<p class="wp-block-paragraph">覚えておきたいのが、システムによって使われる文字コードが異なる点です。</p>



<figure class="wp-block-table"><table><thead><tr><th>文字種</th><th>Shift-JIS（LENBの換算）</th><th>UTF-8（最近のシステム）</th></tr></thead><tbody><tr><td>半角英数（A, 1 など）</td><td>1バイト</td><td>1バイト</td></tr><tr><td>半角カナ（ア, ｲ など）</td><td>1バイト</td><td>3バイト</td></tr><tr><td>ひらがな・漢字（あ, 東 など）</td><td>2バイト</td><td>3バイト</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">LENBはあくまでShift-JIS換算のバイト数を返します。UTF-8では「東京」が6バイトですが、LENBは4バイトと返します。UTF-8ベースのシステムにデータを登録する際は注意が必要です。LENBの値をそのまま使うと、実際のバイト消費量と差が生じます。</p>



<p class="wp-block-paragraph">Shift-JISベースのシステム（全銀フォーマット・レガシーな社内システムなど）なら、LENBの値をそのまま活用できます。新しいWebシステムやクラウドDBはUTF-8が多いので、LENBの値だけで判断しないよう注意してください。</p>



<p class="wp-block-paragraph">全角・半角の変換が必要な場合は、<a href="https://mashukabu.com/excel-function-howto-use-asc/">ASC関数</a>で全角を半角に変換できます。半角を全角にしたい場合は<a href="https://mashukabu.com/excel-function-howto-use-jis/">JIS関数</a>を使います。変換後にLENBでバイト数を確認すると、より正確なチェックができますよ。</p>



<h2 class="wp-block-heading"><span id="toc23">LENB関数に関するよくある質問（FAQ）</span></h2>



<p class="wp-block-paragraph">LENB関数を使っていると引っかかりやすいポイントを、質問形式でまとめました。実務でつまずきやすい疑問を解消しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc24">Q1. GoogleスプレッドシートでもExcelと同じように使えますか？</span></h3>



<p class="wp-block-paragraph">GoogleスプレッドシートにもLENB関数があり、基本の使い方はExcelとほぼ同じです。<code>=LENB(A1)</code> の形で、全角2バイト・半角1バイトとしてカウントできます。</p>



<p class="wp-block-paragraph">ただし、内部的な動作には違いがあります。Excelの場合はOSの既定言語に依存しますが、スプレッドシートはOSの言語設定に左右されません。海外拠点のPCでも日本語データを安定してカウントできるのは、スプレッドシートのメリットですね。</p>



<p class="wp-block-paragraph">なお、スプレッドシートのLENBはUTF-16ベースで動作するため、同じ文字列でもExcelと値が食い違うケースがあります。Excelで作った数式をそのまま移植するときは、念のため実際の値を見比べておくと安心です。詳しい動作は<a href="https://mashukabu.com/spreadsheet-lenb-function/">スプレッドシートのLENB関数</a>の記事で解説しています。</p>



<h3 class="wp-block-heading"><span id="toc25">Q2. サロゲートペア文字（絵文字など）のバイト数はどうなりますか？</span></h3>



<p class="wp-block-paragraph">絵文字や一部の特殊文字は「サロゲートペア」と呼ばれ、内部的に2つのコード単位で表現されます。LENB関数にこうした文字を渡すと、想定外の値が返ることがあるので注意してください。</p>



<p class="wp-block-paragraph">たとえば絵文字を1個含む文字列をLENで数えると「2」と返る場合があります。サロゲートペアが2文字分としてカウントされるためです。LENBの結果も同様に、見た目の印象とずれます。Shift-JISには絵文字の概念がそもそもないので、バイト数の換算も実態と合いません。</p>



<p class="wp-block-paragraph">絵文字を含むデータのバイト数をきちんと管理したいなら、LENBではなく文字コードを直接確認できる<a href="https://mashukabu.com/excel-function-howto-use-unicode/">UNICODE関数</a>を使うのがおすすめです。そもそも基幹システムに流すデータには絵文字を入れないのが無難ですよ。</p>



<h3 class="wp-block-heading"><span id="toc26">Q3. 全銀フォーマット以外でLENBが必要になる場面はありますか？</span></h3>



<p class="wp-block-paragraph">全銀フォーマット以外にも、Shift-JIS換算のバイト数が求められる場面は意外とあります。代表的なものを挙げておきますね。</p>



<ul class="wp-block-list"><li>レガシーな社内基幹システムへのCSV取り込み（摘要欄や品名欄がバイト数制限）</li><li>官公庁向けの届出データ（固定長テキストファイル）</li><li>POSレジや受発注EDIなど、Shift-JIS前提の業務システム連携</li><li>印刷帳票のレイアウト調整（半角・全角混在の桁ぞろえ）</li></ul>



<p class="wp-block-paragraph">これらはどれも「半角nバイト以内」のような制約があり、LENBで事前チェックすると登録エラーを防げます。「文字数では収まるのにバイト数だと超える」というトラブルは、全角が多い日本語データで頻繁に起こりますよ。</p>



<h3 class="wp-block-heading"><span id="toc27">Q4. LENBが非推奨になった後、代替方法はありますか？</span></h3>



<p class="wp-block-paragraph">Microsoftは非推奨の理由として<a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>のVersion 2を挙げています。ただ、これはサロゲートペアの数え方の改善であって、Shift-JIS換算のバイト数を返す機能ではありません。つまり、現時点でLENBを完全に置き換える純正の代替関数はないというのが実情です。</p>



<p class="wp-block-paragraph">どうしても非推奨関数を避けたい場合は、次のような方法が考えられます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(LEN(A1)+LEN(SUBSTITUTE(A1,MID(A1,ROW(INDIRECT(&quot;1:&quot;&amp;LEN(A1))),1),&quot;&quot;)=FALSE))</code></pre>



<p class="wp-block-paragraph">ただ、この手の自前計算式は複雑で保守しづらく、半角カナの扱いなどで誤差も出やすいです。実務では、現状そのまま動くLENB・<a href="https://mashukabu.com/excel-leftb-function/">LEFTB</a>・<a href="https://mashukabu.com/excel-function-howto-use-midb/">MIDB</a>・<a href="https://mashukabu.com/excel-rightb-function/">RIGHTB</a>を使い続けるほうが現実的ですよ。削除されたタイミングで改めて対応を考えれば十分です。</p>



<h3 class="wp-block-heading"><span id="toc28">Q5. UTF-8のバイト数を正確に計算するにはどうすればいいですか？</span></h3>



<p class="wp-block-paragraph">LENBはShift-JIS換算なので、UTF-8ベースのシステムに登録するデータでは値がずれます。UTF-8では半角英数が1バイト、半角カナが3バイト、ひらがな・漢字が3バイトと、Shift-JISとはルールが異なるためです。</p>



<p class="wp-block-paragraph">UTF-8のバイト数を厳密に求めたい場合、Excelの標準関数だけでは少し工夫が必要です。文字種ごとにバイト数を割り当てて合算するか、UTF-8変換に対応したマクロ（VBAの<code>StrConv</code>やADODB.Streamを使う方法）を組むのが確実です。簡易チェックなら「漢字・ひらがな・全角記号は3バイト、半角は1バイト」と仮置きして集計する方法もあります。</p>



<p class="wp-block-paragraph">なお、CSVをUTF-8で保存・読み込みする際の文字化け対策については、<a href="https://mashukabu.com/excel-csv-mojibake/">Excelの文字化け対処法</a>の記事も参考になりますよ。バイト数の前に、まず正しい文字コードで保存できているか確認しておきましょう。</p>



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



<p class="wp-block-paragraph">LENB関数は、文字列のバイト数を返すExcelの関数です。日本語環境では全角＝2バイト、半角＝1バイトとしてカウントされます。</p>



<p class="wp-block-paragraph">ポイントを整理すると次のとおりです。</p>



<ul class="wp-block-list"><li>構文は <code>=LENB(文字列)</code> で、引数は1つだけ</li><li><a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>が文字数を返すのに対し、LENBはバイト数を返す</li><li>「見た目の文字数」はLEN関数、「システム登録・ファイル出力のバイト数」はLENB関数を使う</li><li><code>=LENB(A1)-LEN(A1)</code> で全角文字数を計算できる</li><li><code>=LEN(A1)*2-LENB(A1)</code> で半角文字数を計算できる</li><li>Microsoft公式では非推奨だが、直接入力すれば現在も使える</li><li>全銀フォーマットや社内システムのバイト数制限チェック・全角半角の混在チェックに活用できる</li><li><a href="https://mashukabu.com/excel-function-howto-use-left/">LEFT関数</a>のバイト版（LEFTB・MIDB・RIGHTB）と組み合わせて固定長データの分割にも使える</li><li>英語OSではLENと同じ動作になるので、OSの既定言語に注意</li><li>返すのはShift-JIS換算のバイト数で、UTF-8のバイト数とは異なる</li></ul>



<p class="wp-block-paragraph">非推奨とはいえ、バイト数を返す代替関数は存在しません。固定長データの処理やバイト数制限のバリデーションでは、今後も活躍する関数です。必要な場面では積極的に使ってみてください。</p>



<p class="wp-block-paragraph">文字列操作に関連する関数もあわせて確認したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-len/">LEN関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-left/">LEFT関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-midb/">MIDB関数</a>が参考になります。全角・半角を変換してからバイト数を調べたい場合は、<a href="https://mashukabu.com/excel-function-howto-use-asc/">ASC関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-jis/">JIS関数</a>も合わせて確認してみましょう。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-lenb/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
