回答編集履歴

1

追記

2022/01/25 07:18

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -28,3 +28,22 @@
28
28
 
29
29
  ※この例だと、★ が 3 つ無い場合は `#VALUE!` になります。
30
30
  エラーの場合は空白にしたいのであればさらに `IFERROR()` で囲む、ですかね。
31
+
32
+
33
+
34
+ # 追記
35
+
36
+ 入れ子にしなくてもn番目の位置を取る方法がありました。なるほど...
37
+
38
+ https://exceljet.net/formula/find-nth-occurrence-of-character
39
+ (余所様のサイトです)
40
+
41
+
42
+ - 3 番目の★の位置
43
+ `FIND(CHAR(160), SUBSTITUTE(A1, "★", CHAR(160), 3))`
44
+
45
+ 1. まず SUBSTITUTE で「3 番目の ★ を `CHAR(160)` に置換」
46
+ 2. それを `FIND()` で囲んで、`CHAR(160)` の位置を取得
47
+
48
+ これだと入れ子にしなくても良いですね...
49
+ `CHAR(160)` はおそらく「元の文字列中に出現しない文字」なら何でも良いのでしょうね。