Excelで文字の最初、最後、またはn番目の出現位置を検索するにはどうすればよいですか?
次のような「-」という文字を含むテキスト文字列のリストがあるとします。そして、この「-」の最後またはn番目の出現位置を取得したい場合、この問題に対処するための良いアイデアはありますか?

数式を使用して文字の最後の出現位置を見つける
以下に挙げる数式は、特定の文字の最後の位置を見つけるのに役立ちます。次の手順を行ってください:
1. テキスト文字列の隣にある空白セルに、以下の数式のいずれかを入力またはコピーしてください:
=LOOKUP(2,1/(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)="-"),ROW(INDIRECT("1:"&LEN(A2))))
2. そして、この数式を適用したい範囲までフィルハンドルをドラッグすると、特定の文字「-」の最後の出現位置が得られます。スクリーンショットをご覧ください:
注: 上記の数式では、A2は使用したいセルの値を示しています。「-」は最後の位置を取得したい特定の文字を表しており、必要に応じて他の文字に変更できます。

Kutools AIでExcelの魔法を解き放つ
- スマート実行: セル操作、データ分析、グラフ作成を簡単なコマンドで行います。
- カスタム数式: ワークフローを合理化するための独自の数式を生成します。
- VBAコーディング: 簡単にVBAコードを作成し実装します。
- 数式の解釈: 複雑な数式を簡単に理解できます。
- テキスト翻訳: スプレッドシート内の言語障壁を取り除きます。
ユーザー定義関数を使用して文字の最後の出現位置を見つける
最後の文字「-」の位置を取得するには、ユーザー定義関数を作成することもできます。次の手順に従ってください:
1. 使用したいワークシートを開きます。
2. ALT + F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
3. 次に、[挿入] > [モジュール]をクリックし、モジュールウィンドウに次のマクロを貼り付けます。
VBAコード: 文字の最後の出現位置を見つける
Function LastpositionOfChar(strVal As String, strChar As String) As Long
LastpositionOfChar = InStrRev(strVal, strChar)
End Function
4. その後、このコードを保存して閉じ、ワークシートに戻り、データの横にある空白セルにこの数式 =lastpositionofchar(A2,"-") を入力します。スクリーンショットをご覧ください:
5. そして、この数式を適用したい範囲までフィルハンドルをドラッグすると、最後の文字「-」の出現位置がテキスト文字列から抽出されます。次のスクリーンショットをご覧ください:
注: 上記の数式では、A2は使用したいデータを含むセルです。「-」は最後の位置を見つけたい文字を表しており、必要に応じて変更できます。
数式を使用して文字の最初またはn番目の出現位置を見つける
特定の文字の最初またはn番目の位置を取得するには、次の数式を適用してください:
1. 結果を表示したい空白セルに、以下の数式を入力またはコピーし、Enterキーを押して最初の結果を得ます:
2. そして、この数式を適用したいセルまでフィルハンドルを下にドラッグすると、「-」文字の2番目の位置が計算されます。スクリーンショットをご覧ください:
注: 上記の数式では、A2は使用したいセルの値を示しています。「-」は位置を取得したい特定の文字を表し、数字の2は取得したい文字の指定された出現回数を表しています。
簡単な機能を使用して特定の文字の最初またはn番目の出現位置を見つける
Kutools for Excelの「文字列内の文字のN番目の出現位置を検索する」ユーティリティを使用すると、最初またはn番目の特定の文字の位置を迅速かつ簡単に取得できます。
Kutools for Excelをインストール後、次の手順を行ってください:
例えば、2番目の「-」文字の出現位置を取得したい場合は、次の手順を行ってください:
1. 結果を表示したいセルをクリックします。
2. 次に、Kutools > 関数ヘルパー > 関数ヘルパーをクリックします。スクリーンショットをご覧ください:
3. 関数ヘルパーダイアログボックスで:
- [検索]オプションを[数式タイプ]ドロップダウンリストから選択します;
- [Choose a formula]リストボックスから「文字列内の文字のN番目の出現位置を検索する」を選択します;
- 引数入力セクションで、使用したいテキスト文字列を含むセルを選択し、位置を取得したい文字を入力し、最後に、その文字の位置を取得したい番号を指定します。
4. [OK]ボタンをクリックし、その後、位置を取得したいセルまでフィルハンドルをドラッグして、必要な結果を得ます。
今すぐKutools for Excelをダウンロードして無料でお試しください!
関連記事:
- Excelで最初/最後の単語以外をすべて抽出する
- 最初または最後の単語以外のすべての単語をセルから抽出することは、不要な単語を削除するのに役立ちます。もちろん、必要な単語をコピーして別のセルに一つずつ貼り付けることもできます。しかし、最初または最後の単語以外の複数のセル値を抽出する必要がある場合、これは退屈になるでしょう。Excelで最初または最後の単語以外のすべてを素早く簡単に抽出するにはどうすればよいでしょうか?
- セル内の右から左へ文字を抽出する
- この記事では、スペースに達するまでセル内の右側から文字を引き出す方法について説明します。この記事の便利な数式を使用することで、この作業を迅速かつ簡単に解決できます。
- 最初、最後のX文字、または特定の位置の文字を削除する
- この記事では、スペースに達するまでセル内の右側から文字を引き出す方法について説明します。この記事の便利な数式を使用することで、この作業を迅速かつ簡単に解決できます。
- 最初の小文字の位置を見つける
- 大文字と小文字の両方を含むテキスト文字列のリストがあり、それらから最初の小文字の位置を知りたい場合、Excelワークシートでそれを1つずつ数えずに結果を得るにはどうすればよいですか?
最高のオフィス業務効率化ツール
🤖 | Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Execution|コード生成|カスタム数式の作成|データの分析とグラフの生成|Kutools Functionsの呼び出し…… |
人気の機能:重複の検索・ハイライト・重複をマーキング|空白行を削除|データを失わずに列またはセルを統合|丸める…… | |
スーパーLOOKUP:複数条件でのVLookup|複数値でのVLookup|複数シートの検索|ファジーマッチ…… | |
高度なドロップダウンリスト:ドロップダウンリストを素早く作成|連動ドロップダウンリスト|複数選択ドロップダウンリスト…… | |
列マネージャー:指定した数の列を追加 |列の移動 |非表示列の表示/非表示の切替| 範囲&列の比較…… | |
注目の機能:グリッドフォーカス|デザインビュー|強化された数式バー|ワークブック&ワークシートの管理|オートテキスト ライブラリ|日付ピッカー|データの統合 |セルの暗号化/復号化|リストで電子メールを送信|スーパーフィルター|特殊フィルタ(太字/斜体/取り消し線などをフィルター)…… | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など)|50種類以上のグラフ(ガントチャートなど)|40種類以上の便利な数式(誕生日に基づいて年齢を計算するなど)|19 種類の挿入ツール(QRコードの挿入、パスから画像の挿入など)|12 種類の変換ツール(単語に変換する、通貨変換など)|7種の統合&分割ツール(高度な行のマージ、セルの分割など)|… その他多数 |
Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...
Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に
- Word、Excel、PowerPointでタブによる編集・閲覧を実現。
- 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
- 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!
全てのKutoolsアドインを一つのインストーラーで
Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。





- オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
- 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
- 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
- 30日間フル機能お試し —— 登録やクレジットカード不要
- コストパフォーマンス最適 —— 個別購入よりお得