| 
    
     |  | ▼ハチ さん: >▼凪 さん:
 >>数値をCstrを使用して変換した場合に少数点以下の桁数で
 >>使用している0が消えてしまうのを防ぐ方法はあるのでしょうか?
 >>元ある状態とまったく同じ状態での文字列を取得したいのです。
 >>
 >>条件
 >>1.ある列のセルから順に値を取得(列の行には数値と文字列のランダム)
 >>2.取得する値は小数点以下が行によってバラバラ(0.1や1234.0000001等)
 >>3.負の値はなし
 >>
 >>例          結果    判定 希望
 >>cstr(0.1000)     0.1     NG  0.1000と欲しい
 >>cstr(0.1001)     0.1001   OK
 >>
 >>一度strを使い前の" 3"とかでltrimを使用し、とも考えたのですが
 >>1の条件にある最初からある文字列でNGとなりだめでした。
 >>
 >>何かいい方法はないでしょうか?
 >>よろしくお願いします。
 >
 >あまりピンときてないですが、こういうことですか?
 >
 >Sub Test()
 >  MsgBox 0.51
 >  MsgBox Format(0.51, "0.0000")
 >  MsgBox TypeName(Format(0.51, "0.0000"))
 >End Sub
 
 ▼ハチさん
 すみません説明下手と説明不測でした。
 セルの値ごとに小数点の桁数が違うのです。
 列Aの値(書式:標準) 欲しい答え(書式:文字列)
 1.1234567        1234567
 2.123.4567       123.4567
 3.あいうえお      あいうえお
 4.0.12345        0.12345
 5.0.1234567890     0.1234567890←(最後の0も必ず入ること)
 6.テスト        テスト
 
 format関数だと、小数点が固定されてしまうので使えませんでした
 
 |  |