Office関連

セル内の改行をカウントするExcelマクロ

Excel セルの内容 改行を数える VBA」といったキーワード検索でのアクセスがあったので、簡単な処理を考えてみました。

下記ページにもあるように、Excelはセル内の改行を文字コード LF (0A) として扱います。

・[XL2003] セル内の改行が「・」中点で表示される
http://support.microsoft.com/kb/822372/ja

そのため、セル内の改行を数える時はLF(vbLF)の数を調べれば良いわけです。
よく使われる方法としては、Split関数を使って対象となる文字列を分割し、UBound関数を使って配列の大きさを調べる方法があります。

Public Function COUNTLF(ByVal r As Excel.Range) As Long
  COUNTLF = UBound(Split(r.Value, vbLf))
End Function

コードとしては上記のような感じですね。
早速動きを確認してみると・・・

COUNTLF_01

ちゃんと目的の改行数が取得できているようです。
ただし、上記コードはあくまでも改行(LF)を数えるもので、文字列の折り返しには対応していませんので、その点は注意する必要があります。

Microsoft MVP 5 Years リングが届きました。前のページ

モヤさまのショウ君にいろいろ喋らせるVBAマクロ(1)次のページ

関連記事

  1. Office関連

    [VBA]ユーザーフォーム上のコンボボックスでオートコンプリート機能を実装する方法

    MSDNフォーラムに「ユーザーフォーム上のコンボボックスで、任意の文字…

  2. Office アドイン

    [Officeアドイン]地図記号挿入アドイン

    ちょっとずつ作成していたWord用のOffice アドインがようやくO…

  3. Office関連

    「ちゃうちゃう!」で2つの文書を比較するWordマクロ

    2014/08/10 追記:ちゃうちゃう!がバージョンアップされま…

  4. Office関連

    Office 2013 カスタマープレビュー版の「Spy Utility」

    たまたま見つけたWebページ「Office2013のデバッグ用ツールが…

  5. アイコン一覧

    Office 365アイコン(imageMso)一覧(K,L)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  6. Office関連

    Computer Vision APIを使って画像から文字列を取得するVBAマクロ

    前々回の記事で、Fiddlerを使ってMicrosoft Cognit…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP