• ベストアンサー

【excel vba】 時刻データのチェック

dim myDate as Variant myDate = activesheet("xxx.xls").range("A1") if <<<myDateが、"hh:mm::ss"形式のデータかどうか? >>> then 処理1 end if と、したいのですが、 <<<・・・・・>>> の記述内容がわかりません。 ご教授お願い致します。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

そのままで出来るわけがないと思いますね。 Dim myDate As Variant Set myDate = ActiveSheet.Range("A1") If myDate.NumberFormatLocal Like "hh:mm:ss*" Then    ' 処理1 Else   MsgBox myDate.NumberFormatLocal & vbCrLf & "違います。", 48 End If

riseshinejp
質問者

お礼

参考になりました。 ありがとうございました。

その他の回答 (3)

  • ki-aaa
  • ベストアンサー率49% (105/213)
回答No.4

こんにちわ Sub test111()   Dim myDate As Variant   myDate = ActiveSheet.Range("A1").Text   If myDate Like "##:##:##" Then     MsgBox "hh:mm:ss"   Else     MsgBox "no"   End If End Sub ただこれにも少し問題がありまして、テストされる列の幅を変更して、 時間の表示が"hh:mm:ss" から "####"に成るまで狭くすると、??です。

riseshinejp
質問者

お礼

参考になりました。 ありがとうございました。

回答No.2

myDate..NumberFormatLocal = "hh:mm:ss" で、いけると思います。

riseshinejp
質問者

お礼

参考になりました。 ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! こんな感じですかね? If myDate.NumberFormatLocal = "hh:mm:ss" Then 処理1 End If 参考になれば良いのですが・・・m(__)m

riseshinejp
質問者

お礼

参考になりました。 ありがとうございました。

関連するQ&A