右から」といった検索で、このサイト・インストラクターのネタ帳へのアクセスがあります。FIND関数を使って、文字列の後ろ(右)から、ある文字を探して、何文字目にあるのか調べる方法を、探していた方による検索でしょう。a-b-c-daa-bb-ccaaa-bbbのように、途中の出現回数や文字数が決まっていないときに、最後の「-」(ハイフン)が何文字目にあるかを取得するために、どのような数式にすればいいのかを探していたのだろうと推測しています。最初に、結論の数式をご紹介します。""))))A2セルに入力されている文字列に「●」が含まれていないときに、上記の数式で、A2セルに入力されている文字列の最後の「-」が、何文字目かを取得できます。大切なのは、この数式が何をやっているかを理解することです。""))))」という数式は、以下の考え方で作られています。置き換えた「●」の位置をFIND関数を使って調べるFIND関数で後ろ・右から文字を探して位置を取得する数式を実際に確認しましょう実際にExcel上で数式を入力してみましょう。A2セルに元の文字列が入力されているときに、B2セルとC2セルに途中の状態を計算して、D2セルに最後の「-」の位置を計算してみましょう。""))」を入力します。"")」を、元の文字数「LEN(A2)」から引き算すれば、A2セルに「-」が何文字存在しているかを調べられます。""))」の意味です。B2)」をC2セルに入力します。SUBSTITUTE関数の第4引数を指定すると、いくつ目に登場する文字を置換するのか、指定できます。上記の数式では第4引数にB2セルが指定されているので、最後に登場する「-」だけが「●」に置換されます。C2)」をD2セルに入力します。これでD2セルに、A2セルに入力されている文字列のうち、最後の「-」が何文字目なのかを取得できます。FIND関数で後ろ・右から文字を探して位置を取得する数式を一つにまとめる途中の計算を入れておく作業用セルを残しておけるのなら、上記のままでもOKですが、上記の数式を一つにまとめるなら以下の手順です。""))))」とします。これが、この記事の最初にご紹介した数式です。この記事では最後に登場する「-」を「●」にしていますが、これは「●」である必要はありません。元の文字列に登場しない文字なら、なんでもOKです。ネット上にある日本語情報では「CHAR(9)」を使っている事例をよく見かけますが、最初は違いがハッキリとわかる文字を使って理解するのがおすすめです。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。