[解決済み] VBAを使わずにExcelで文字列の逆引き検索を行うには?
2022-04-21 13:09:22
質問
文字列のリストを含むExcelスプレッドシートがあります。各文字列は複数の単語で構成されていますが、各文字列内の単語の数は異なっています。
Excelの組み込み関数(VBAなし)を使用して、各文字列の最後の単語を分離する方法はありますか?
例
あなたは人間に分類されますか?->人間ですか? いいえ、私は肉アイスキャンディーです ->アイスキャンディー アジズ!ライト!->ライト!
解決方法は?
これはテスト済みで、動作します(Bradの元の投稿に基づく)。
=RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1," ","|",
LEN(A1)-LEN(SUBSTITUTE(A1," ","")))))
もし元の文字列がパイプ "|"文字を含む可能性があるなら、上記の両方を、ソースに現れない他の文字に置き換えてください。(ブラッドのオリジナルは、印刷不可能な文字が翻訳の際に削除されたため、壊れてしまったのだと思います)。
オマケ:仕組み(右から左へ)。
LEN(A1)-LEN(SUBSTITUTE(A1," ",""))
- 元の文字列に含まれるスペースの数
SUBSTITUTE(A1," ","|", ... )
- だけを置き換えます。
最終
のスペースに
|
FIND("|", ... )
- 置き換えられたその絶対位置を検索する
|
(それは最終的なスペースだった)
Right(A1,LEN(A1) - ... ))
- それ以降のすべての文字を返します
|
EDITです。 を追加して、ソーステキストにスペースが含まれない場合を考慮し、式の先頭に以下を追加します。
=IF(ISERROR(FIND(" ",A1)),A1, ... )
を作成し、式全体を今一度確認します。
=IF(ISERROR(FIND(" ",A1)),A1, RIGHT(A1,LEN(A1) - FIND("|",
SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))))
または
=IF(COUNTIF(A1,"* *")
の構文で、他のバージョンと同じです。
元の文字列の最後の位置にスペースが含まれる可能性がある場合、すべてのスペースをカウントしながらトリムする関数を追加します。以下のような関数にする。
=IF(ISERROR(FIND(" ",B2)),B2, RIGHT(B2,LEN(B2) - FIND("|",
SUBSTITUTE(B2," ","|",LEN(TRIM(B2))-LEN(SUBSTITUTE(B2," ",""))))))
関連
-
[解決済み] Excel VBA オートメーション エラー。呼び出されたオブジェクトは、そのクライアントから切断されました。
-
[解決済み] VBAにはコメントブロックの構文がありますか?[重複しています]
-
[解決済み] Excelで列のすべてのセルに同じテキストを追加する
-
[解決済み] 2つのデータセットに対する積み重ねられたカラムチャート - Excel
-
[解決済み] VBA+エクセル+トライキャッチ
-
[解決済み] Microsoft Officeをインストールせずに、C#でExcel(.XLSおよび.XLSX)ファイルを作成するにはどうすればよいですか?
-
[解決済み] UTF-8のCSVファイルをExcelに強制的に自動認識させることは可能ですか?
-
[解決済み】Excelで数式から空のセルを返す。
-
[解決済み】Excel VBAでSelectを使用しないようにする方法
-
[解決済み] VBAでグローバル変数を宣言するにはどうしたらいいですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「ワークシートクラスの貼り付けメソッドに失敗しました」が時々発生するのはなぜですか?
-
[解決済み] XLSMをCSVで保存しようとすると、「オブジェクト_workbookのメソッドsaveasに失敗しました」エラーが発生する
-
[解決済み] Excel VBA オートメーション エラー。呼び出されたオブジェクトは、そのクライアントから切断されました。
-
[解決済み] VBA関数 - 引数は任意ではない
-
[解決済み] Excelで列のすべてのセルに同じテキストを追加する
-
[解決済み] どのようにvbaコードで "名前を付けて保存 "を行うには、datestampと私の現在のExcelワークブックを保存するには?
-
[解決済み] Excelのセルで変数を宣言する
-
[解決済み] Application.CalculateとApplication.CalculateFullの違いは何ですか?
-
[解決済み】VBAでフォルダー内のファイルをループ処理?
-
[解決済み] VBAを使わずにExcelで文字列の逆引き検索を行うには?