
Error 13, los tipos no coinciden
Publicado por elorpar (1 intervención) el 21/07/2014 20:50:49
Hola amigos,
Soy elorpar de barcelona, viejo usuario de la web del programador, pero mi perfil cayó en desuso y ahora vuelvo a reengancharme.
Tengo un gran problema con una macro. Estoy en holanda trabajando, y la puse en mi excel y todo iba bien. Hasta que pasé el archivo a mi PC y ahí continué una gran parte de trabajo. Ahora, al pasar mi archivo al PC de mi empresa y ejecutar la macro me sale el Error 13, los tipos no coinciden.
He leído por ahí y se dice que puede ser la configuración regional del PC, pero no me va ni cambiándola.
A alguien se le ocurre qué puede ser y como solventarlo? La macro es la siguiente:
Sub ORDERS()
Worksheets("ORDERS").Range("A2:EZ6500").Cells.Clear
Sheets("DATAORDERS").Select
Range("a1").Select
Do While ActiveCell.Value <> ""
valor = ActiveCell.Value
For Each hoja In ActiveWorkbook.Sheets
If UCase(hoja.Name) <> "ORDERS" And UCase(hoja.Name) <> "DATAORDERS" Then
hoja.Select
For Each celda In ActiveSheet.UsedRange
If UCase(celda.Value) = UCase(valor) Then
celda.EntireRow.Copy
Sheets("ORDERS").Range("a65000").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
lista = lista & celda.Row
End If
Next
End If
Next
Sheets("DATAORDERS").Select
lista = ""
ActiveCell.Offset(1, 0).Select
Loop
Sheets("ORDERS").Select
End Sub
Soy elorpar de barcelona, viejo usuario de la web del programador, pero mi perfil cayó en desuso y ahora vuelvo a reengancharme.
Tengo un gran problema con una macro. Estoy en holanda trabajando, y la puse en mi excel y todo iba bien. Hasta que pasé el archivo a mi PC y ahí continué una gran parte de trabajo. Ahora, al pasar mi archivo al PC de mi empresa y ejecutar la macro me sale el Error 13, los tipos no coinciden.
He leído por ahí y se dice que puede ser la configuración regional del PC, pero no me va ni cambiándola.
A alguien se le ocurre qué puede ser y como solventarlo? La macro es la siguiente:
Sub ORDERS()
Worksheets("ORDERS").Range("A2:EZ6500").Cells.Clear
Sheets("DATAORDERS").Select
Range("a1").Select
Do While ActiveCell.Value <> ""
valor = ActiveCell.Value
For Each hoja In ActiveWorkbook.Sheets
If UCase(hoja.Name) <> "ORDERS" And UCase(hoja.Name) <> "DATAORDERS" Then
hoja.Select
For Each celda In ActiveSheet.UsedRange
If UCase(celda.Value) = UCase(valor) Then
celda.EntireRow.Copy
Sheets("ORDERS").Range("a65000").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
lista = lista & celda.Row
End If
Next
End If
Next
Sheets("DATAORDERS").Select
lista = ""
ActiveCell.Offset(1, 0).Select
Loop
Sheets("ORDERS").Select
End Sub
Valora esta pregunta


0