Se ha producido el error '1004' en tiempo de ...

Hola, tengo un problema con un macro que no me deja continuar en mi documento. El documento es muy extenso y tiene varios sheets.
En el Sheets(1) hay un botón que entre otras cosas incluye:
Dim MIA As Integer
MIA = 4
For M = 5 To 200
If Cells(M, 29) <> 0 Or Cells(M, 30) <> 0 Or Cells(M, 31) <> "" Then
For Y = 5 To 150
If Sheets(4).Cells(Y, 3) = "" Then
Sheets(4).Cells(Y, 1) = Cells(M, 1) ' ITEM
Sheets(4).Cells(Y, 2) = Cells(M, 34) ' #GE
Sheets(4).Cells(Y, 3) = Cells(M, 2) ' FECHA
Sheets(4).Cells(Y, 4) = Cells(M, 3) ' CLIENTE
Sheets(4).Cells(Y, 5) = Cells(M, 5) ' OPERADOR
Sheets(4).Cells(Y, 6) = Cells(M, 29) ' HORAS DE SANCION
Sheets(4).Cells(Y, 7) = Cells(M, 31) ' OBSERVACIONES
MIA = MIA + 1
Exit For
End If
Next
End If
Next
Sheets(4).Range("A4:GMIA").Borders.Color = RGB(0, 0, 0)
Mi problema esta en la ultima linea, lo que intento hacer es colocarle bordes a las celdas de la hoja 4, la cual tiene un numero variable de filas, por lo que MÍA es la variable que define la ultima fila de la hoja.
En resumen, lo que me sucede es que si coloco G5, reconoce que se trata de la celda G5, pero si le pongo GMIA, no reconoce que se trata de la columna G, fila MÍA
¿Alguna sugerencia por favor?
Muchas gracias.

1 Respuesta

Respuesta
1
Lo que pasa es que las referencias no se escriben así de sencillo, lamentablemente. La forma correcta es:
Range("A4:G" & MIA)
Saludos
Elsa
PD) Tu mejor opción para saber todo de VBA, el manual Programacion_Excel, desde:
http://es.geocities.com/lacibelesdepunilla

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas