[解決済み】Excel:文字列の最後の文字/文字列の一致
2022-04-12 08:31:08
質問
基本関数を使用して、文字列内の最後の文字/文字列の一致を識別する効率的な方法はありますか? つまり、最後の文字/文字列ではなく
の
文字列が最後に出現する位置、すなわち
での
文字列のことです。
Search
と
find
どちらも左から右へ動くので、長い再帰的アルゴリズムなしに適用する方法が思いつきません。 そして
この解決策
はもう古いようです。
どのように解決するのですか?
エクセルのバージョンが新しくなると、新しい関数が追加され、その結果新しい方法が生まれます。古いバージョンでも再現可能ですが(まだ見たことがありません)、Excel O365を持っている場合は使用することができます。
=MATCH(2,1/(MID(A1,SEQUENCE(LEN(A1)),1)="Y"))
これは、(重なっている)部分文字列の最後の位置を取得するために使用することもできる。
=MATCH(2,1/(MID(A1,SEQUENCE(LEN(A1)),2)="YY"))
| Value | Pattern | Formula | Position |
|--------|---------|------------------------------------------------|----------|
| XYYZ | Y | =MATCH(2,1/(MID(A2,SEQUENCE(LEN(A2)),1)="Y")) | 3 |
| XYYYZ | YY | =MATCH(2,1/(MID(A3,SEQUENCE(LEN(A3)),2)="YY")) | 3 |
| XYYYYZ | YY | =MATCH(2,1/(MID(A4,SEQUENCE(LEN(A4)),2)="YY")) | 4 |
これにより、任意の置換文字が不要になり、パターンの重ね合わせも可能になりますが、その反面、配列を使用することになります。
注 古いバージョンのExcelでも、次のいずれかの方法で同じ動作を強制することができます。
=MATCH(2,1/(MID(A2,ROW(A1:INDEX(A:A,LEN(A2))),1)="Y"))
を通じて入場。
Ctrl
シフト
入力
またはインラインで
INDEX
で暗黙の交差を解消します。
=MATCH(2,INDEX(1/(MID(A2,ROW(A1:INDEX(A:A,LEN(A2))),1)="Y"),))
関連
-
[解決済み] VBA+エクセル+トライキャッチ
-
[解決済み] "数式で隣接するセルが省略される "問題の回避策
-
[解決済み] Microsoft Officeをインストールせずに、C#でExcel(.XLSおよび.XLSX)ファイルを作成するにはどうすればよいですか?
-
[解決済み] Excel の相互運用オブジェクトを適切にクリーンアップするにはどうすればよいですか?
-
[解決済み] Microsoft Excelで正規表現(Regex)をセル内とループの両方で使用する方法
-
[解決済み] Excelの数式で二重引用符を含む文字列を作成する方法は?
-
[解決済み】Excelで特定のテキスト値を自動的に日付に変換しないようにする。
-
[解決済み】Excel VBAでSelectを使用しないようにする方法
-
[解決済み] VBAでExcelの最後に使用されたセルを検索する際のエラー
-
[解決済み] ExcelからVBAを使用してサーバーにHTTP POSTリクエストを送信するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 閉じたワークブックから値を取得するExecuteExcel4Macro
-
excel カラーレコードの値を設定する方法
-
[解決済み] 複数のリファレンス値を調べた結果の合計
-
[解決済み] Microsoft ExcelにPDFファイル/オブジェクトを挿入すると、「オブジェクトを挿入できません」エラーが発生する。
-
[解決済み] Excelで列のすべてのセルに同じテキストを追加する
-
[解決済み] VBA+エクセル+トライキャッチ
-
[解決済み] 特定の時間だけ一時停止するには?(エクセル/VBA)
-
[解決済み] UTF8エンコーディングでExcelからCSVに変換する【終了しました
-
[解決済み】セルに部分文字列が含まれているかどうかを確認する
-
[解決済み] シートが存在するかどうかのテストまたはチェック