
Problemas con CreateTextFile
Publicado por Es (6 intervenciones) el 19/03/2015 13:12:42
Buenas!
Resulta que he cambiado unas celdas de formato a fecha.
Pues bien, el problema viene al rular una macro que me sale el error
error 13. No coinciden los tipos
Os pongo el código donde se produce el error
Dim ca As Double 'fecha
Dim cb As Double 'VARIABLE PARA EL CALCULO DEL DÍA DEL AÑO
'CALCULO DEL DÍA DEL AÑO
ca = Date 'fecha
cb = ca / 1461
ca = cb - Int(cb)
If ca = 0 Then
cb = 365
End If
If ca > 0 And ca < 0.25119780971937 Then
cb = ca * 1461
End If
If ca > 0.250513347022587 And ca < 0.50102669404516 Then
cb = ca * 1461 - 366
End If
If ca > 0.500342231348392 And ca < 0.750855578370977 Then
cb = ca * 1461 - 366 - 365
End If
If ca > 0.750171115674196 Then
cb = ca * 1461 - 366 - 365 - 365
End If
cb = CInt(cb) 'DÍA DEL AÑO
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Set FS = CreateObject("Scripting.FileSystemObject")
dia = Range("B8").Value
mes = Range("A8").Value
Set TXT = FS.CreateTextFile(da & "\" & db & "_" & dia & "_" & mes & "." & cb, True)
Si dejo sin formato las celdas no sale el error.
Lo curioso es que si ejecuto paso a paso el código en ambos casos, los valores de ca, cb, etc salen iguales
.
¿Alguien sabe por qué sale esto?
Muchas gracias!!!
Resulta que he cambiado unas celdas de formato a fecha.
Pues bien, el problema viene al rular una macro que me sale el error
error 13. No coinciden los tipos
Os pongo el código donde se produce el error
Dim ca As Double 'fecha
Dim cb As Double 'VARIABLE PARA EL CALCULO DEL DÍA DEL AÑO
'CALCULO DEL DÍA DEL AÑO
ca = Date 'fecha
cb = ca / 1461
ca = cb - Int(cb)
If ca = 0 Then
cb = 365
End If
If ca > 0 And ca < 0.25119780971937 Then
cb = ca * 1461
End If
If ca > 0.250513347022587 And ca < 0.50102669404516 Then
cb = ca * 1461 - 366
End If
If ca > 0.500342231348392 And ca < 0.750855578370977 Then
cb = ca * 1461 - 366 - 365
End If
If ca > 0.750171115674196 Then
cb = ca * 1461 - 366 - 365 - 365
End If
cb = CInt(cb) 'DÍA DEL AÑO
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Set FS = CreateObject("Scripting.FileSystemObject")
dia = Range("B8").Value
mes = Range("A8").Value
Set TXT = FS.CreateTextFile(da & "\" & db & "_" & dia & "_" & mes & "." & cb, True)
Si dejo sin formato las celdas no sale el error.
Lo curioso es que si ejecuto paso a paso el código en ambos casos, los valores de ca, cb, etc salen iguales

¿Alguien sabe por qué sale esto?
Muchas gracias!!!
Valora esta pregunta


0