- ベストアンサー
エクセル 文字列で右から一文字づつ文字を抽出したい
エクセル2010を使用しています。 mid(抽出したいセル,左からの文字数,抽出したい文字数)と作業を行ってきましたがmid関数は常に左から抽出されるようです。 そこでright(抽出したいセル,抽出したい文字数)と試みましたが、一番右はOKですが2文字目、3文字目とどのように抽出してよいかわかりません。 どなたかご教授いただけませんでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
全体的な意図の説明が不足しているように思うが >一文字づつ文字を抽出したい 実例を挙げること。 例データ 1文字だけ取り出す場合 B列に左からの位置 A列 B列 C列 123456 2 5 123456 3 4 123456 5 2 123456 6 1 123456 4 3 C列は =MID($A$1,LEN($A$1)-B1+1,1) 3桁うぇお取り出すの場合 123456 2 5 345 123456 3 4 234 123456 5 2 #VALUE! 123456 6 1 #VALUE! 123456 4 3 123 列の式 =MID($A$1,LEN($A$1)-B1+1-3+1,3) #VALUEはそこから3桁取れないというエラー。面倒なのでチェックを入れるのは略 すべて計算を組み込んでMid関数でも出来るでしょう。
その他の回答 (2)
- MackyNo1
- ベストアンサー率53% (1521/2850)
>追加で恐縮なのですが、A1に”10924725”という文字列で数字が入っていた場合110924725、1110924725と常に左を表示されてしまいました。 mid関数などは自然と空白になるのですが、何かいい方法はないでしょうか。度々で恐縮です。 「常に左を表示される」とはどういう意味でしょうか? また、どのような関数操作で、そのような数字が返ってきたのでしょうか? 実際にMID関数でうまくいく数式と、ご希望の右から1桁の数字の表示方法(例えば、列方法の各セルに右からの数字を1桁ずつ左から右に表示=シートのレイアウト)を例示されると、皆さんから的確な回答が寄せられると思います。
お礼
回答ありがとうございました。 うまく説明できず申し訳ありません。 Ano1さんに教えていただいた”=LEFT(RIGHT(A1,2),1)”の組み合わせだけですと桁数の上限を超えても常に最後の数字が帰ってきてしまったのです。 ANo2さんに教えていただいたmid関数とLEN関数を試してみたところうまく数字を反映させることができました。
- FEX2053
- ベストアンサー率37% (7991/21371)
右から2文字目、3文字目は、右から2文字抜いた時の先頭、3文字抜いた時の先頭です。 =LEFT(RIGHT(A1,2),1)
お礼
回答ありがとう御座いました。 無事解決することができました。
補足
早速ご回答いただきありがとう御座いました。 追加で恐縮なのですが、A1に”10924725”という文字列で数字が入っていた場合110924725、1110924725と常に左を表示されてしまいました。 mid関数などは自然と空白になるのですが、何かいい方法はないでしょうか。度々で恐縮です。
お礼
回答ありがとう御座いました。 無事解決することができました。