• ベストアンサー

Excel 関数 

例えば1つのセルに下記のような値が入っていたとき、別のセルに記号などを省いた形式に出力させるには REPLACEなどで表示させれば問題ないと思うのですが、、 セル1       関数で出力した値 A129°48′09.66"  129480966 下記のような形式の場合9の桁は1桁なので、0を追加して2桁で表示したい場合はどのような関数を使ったらいいのでしょうか? なかなかいい方法が思い浮かびません。 1桁でも2桁でもどちらでも対応できるものを考え中です。 A129°48′9.66"  12948966 ご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.2

B1セルに =LEFT(A1,FIND("°",A1)-1) &TEXT(MID(A1,FIND("°",A1)+1,FIND("′",A1)-FIND("°",A1)-1),"00") &TEXT(MID(A1,FIND("′",A1)+1,FIND(".",A1)-FIND("′",A1)-1),"00") &TEXT(RIGHT(A1,LEN(A1)-FIND(".",A1)),"00") 長いのは、ご勘弁。 ° や ′ が全角か半角か 確認してください。(上式は、全角) . は半角。

aiurai54
質問者

補足

遅くなってすみません。できました!! ありがとうございます。

その他の回答 (3)

noname#79209
noname#79209
回答No.4

A129°がA35°の時は「035」と表示しなくてもいいのでしょうか?

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

> 桁数が変動しないのは129の場合のみですので。。48 やら 9 やら66 は全て1桁になる可能性もあるのです。 では、 A129°48′09.66" は129480966 A129°8′9.6" でも129080960にする方法 =MID(A1,2,3)&IF(RIGHT(MID(A1,6,2),1)="′",TEXT(MID(A1,6,1),"00"),MID(A1,6,2))&TEXT(MID(A1,FIND("′",A1)+1,2),"00")&IF(RIGHT(MID(A1,FIND(".",A1)+1,2),1)="""",MID(A1,FIND(".",A1)+1,1)&"0",MID(A1,FIND(".",A1)+1,2))

aiurai54
質問者

お礼

すみません。ありがとうございます。 助かりました。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

これでどうでしょう?1桁でも2桁でもどちらでも対応できると思います。 (ただし、A129°48′のところは同一桁数とします。) =MID(A1,2,3)&MID(A1,6,2)&TEXT(MID(A1,9,2),"00")&LEFT(RIGHT(A1,3),2)

aiurai54
質問者

お礼

さっそくのご回答ありがとうございます。 ただ、A129°48′9.66" のうち桁数が変動しないのは129の場合のみですので。。48 やら 9 やら66 は全て1桁になる可能性もあるのです。 ありがとうございます。

関連するQ&A