Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Visual Basic para Aplicaciones - Se ha producido el error 13 en tiempo de ejecucion...

Life is soft - evento anual de software empresarial
  Imprimir  
Vista:

Se ha producido el error 13 en tiempo de ejecucion...

Publicado por Jorge Ortiz Morales (1 intervención) el 01/07/2012 20:03:10
Bueno mi consulta es por el siguiente problema:

Resulta que estoy realizando una macro para actualizar un existencia, en la empresa donde trabajo, y cree un codigo para que al ejecutarse me copie el rango de una hoja en otra hoja, el codigo es el siguiente:

Sub Existencia_click()

Hoja1.Select

"En esta seccion consigo que me filtre los datos de la hoja origen, ya que son mas de 14,000 filas le puse un filtro para que solo active las filas con la condicional 1."

With ActiveWorkbook.Worksheets("Existencia Inicial").Sort
.SetRange Range("F2:F15000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply

End With

Sheets("Existencia Inicial").Select
ActiveSheet.Range("$F$2:$F$15000").AutoFilter field:=1, Criteria1:="<>"

"Aqui inicio el codigo para copiar intentar copiar las celdas de una hoja a otra"

Hoja1.Activate
If Hoja1.Range("F3:F5000") = 1 Then <--- Esta es la linea que me genera el error:"Se ha producido el error 13 en tiempo de ejecucion: No coinciden los tipos"

Hoja1.Range("B3:B15000").Copy
Hoja5.Select
Hoja5.Range("Q1").Formula = "=counta(RC[-13]:R[5999]C[-13])+1"
INI = Hoja5.Range("Q1")
FIN = Hoja5.Range("O1")
INI2 = "C" & INI
FIN2 = ":C" & FIN
rang1 = INI2 + FIN2
Hoja5.Activate
Hoja5.Range(rang1).Value = Hoja1.Range("B3:B15000").Value
Application.CutCopyMode = False

End If


End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JuanC

Se ha producido el error 13 en tiempo de ejecucion...

Publicado por JuanC juanc2942@gmail.com (404 intervenciones) el 03/07/2012 22:04:06
el error está más que claro: estás comparando un rango con un valor numérico (tipos diferentes)
deberías comparar el valor de cada celda del rango con el valor constante...
un bucle For Each ... Next puede ser una solución...

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar