|
こんにちは。かみちゃん です。
>しかし、「型が一致しません」と
>filedate = CLng(DateValue(Format(Left(Right(vntFileName(i), 12), 6), "00\/00\/00")))
>でエラーになります。
MsgBox Left(Right(vntFileName(i), 12), 6)
で何と表示されるか教えてください。
060317
などではないものが表示されているのではないでしょうか?
私が提示したコードは、「12」ではなく「13」としているのですが・・・
>下記の意味を教えていただけませんか
>>もちろん、日付でない場合は、エラーになりますので、その対処がいるかもしれません。
上記のように「型が一致しません」となる場合もあるということです。
たとえば、こんな感じです。
Sub Macro1()
Dim strFileName As String
Dim filedate
strFileName = "050301rog.txt"
'日付形式かどうかを判断
If IsDate(Format(Left(Right(strFileName, 13), 6), "00\/00\/00")) Then
filedate = CLng(DateValue(Format(Left(Right(strFileName, 13), 6), "00\/00\/00")))
MsgBox filedate
Else
MsgBox "日付ではありません " & Left(Right(strFileName, 13), 6)
End If
End Sub
|
|