• ベストアンサー

TEXT関数 : 表示形式に関して(桁数の指定)

下記のようなTEXT関数を使って、ファイル作成時の時間を返すようにしているのですが、作成時間が08:30の場合、8:30としか値が返されません。時、分ともに2桁で表示をしなくてはなりません。 TEXT(HOUR(NOW()),""00"")&TEXT(MINUTE(NOW()),""00"") 作成時間;08:30の場合 正;08:30 誤;8:30 作成時間が12:10の場合、値は"1210"とそれぞれ2桁の値が返されます。 表示形式の設定にもう一工夫必要なのでしょうか。 アドバイスを宜しくお願いいたします。

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

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

No2-3です。 > VBAでtext関数を使用した場合の質問をしていました VBAならTEXT関数ではなくFormat関数になります。 たとえばメッセージボックスに表示するなら、 MsgBox Format(Now(), "HH:MM") です。

plumbloom
質問者

お礼

ご回答どうもありがとうございました。 教えて頂いた方法を挑戦してましたが、やはり時間が2桁で表示させることができませんでした。 値を返すセルに書式設定もしていないので、2桁で表示するができないのは疑問が残るばかりです。。。(:_;) ですが、新しい方法をいくつも勉強できました。 どうもありがとうございます。

その他の回答 (4)

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.4

違うかな? Excelでの表示方法であれば 今の時間を表示する方法 方法1 =TEXT(HOUR(NOW()),"00")&":"&TEXT(MINUTE((NOW())),"00") で8:30=08:30と表示されます。 方法2 =NOW()と入力 セルの書式設定 → 表示形式 → ユーザー定義 → 種類にhh:mm ただし、上記の2つの方法は、時間の経過とともにそのときの時刻に更新されます。 更新されない方法で作成時刻を入力する方法 1.セルの書式設定 → 表示形式 → ユーザー定義 → 種類にhh:mm 2.そのセルをアクティブにし Ctrlキー+: 以上 Excelのことでなければスルーしてください

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

No2です。 =TEXT(HOUR(A1),"00")&":"&TEXT(MINUTE(A1),"00") はA1に時刻が入っている場合でした。 NOW()を使うなら =TEXT(HOUR(NOW()),"00")&":"&TEXT(MINUTE(NOW()),"00") ですね。失礼しました。

plumbloom
質問者

お礼

早速のアドバイスどうもありがとうございます。 肝心なことを記載し忘れていましたが、excel上での関数ではなく、VBAでtext関数を使用した場合の質問をしていました。 VBA上でも、関数と関数の間に、":"などを入力したほうが良いのでしょうか。

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

普通は =TEXT(NOW(),"hh:mm") とすると思いますが、お書きの式なら、 =TEXT(HOUR(A1),"00")&":"&TEXT(MINUTE(A1),"00") としたらどうでしょうか?

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

単に =TEXT(NOW(),"hh:mm") ではダメ?

plumbloom
質問者

お礼

早速のアドバイスどうもありがとうございます。 肝心なことを記載し忘れていましたが、excel上での関数ではなく、VBAでtext関数を使用した場合の質問をしています。 上記のような桁数ではなく、書式を設定する方法もあるのですね。 勉強になりました。 ですがVBA上で、ご提案頂いた式に早速挑戦してみましたが、エラーとなってしまいます。VBAだと少し構造が異なりますか。

関連するQ&A