![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
03/12/2008, 09:23
|
| | Fecha de Ingreso: noviembre-2008
Mensajes: 37
Antigüedad: 16 años, 2 meses Puntos: 0 | |
Error en tiempo de ejecucion de Range Buenas tardes,
estoy haciendo una macro en excel y tengo una duda de como realizar lo siguiente.
El caso es que cada vez que trabajo con un fichero, tengo un numero variable de columnas. Lo que intento es copiar el formato de las celdas de todas las filas de la columna n-1 a la columna n siempre que la columna n no sea texto. Para hacer esto me he basado en dos for que detallo a continuacion.
El problema me lo encuentro cuando intento seleccionar una celda de la columna n-1 para poder copiarle el formato, exactamente la instruccion "Range(Cells(m, n)).Select"
Al llegar a este punto en la ejecución me aparece :
Se ha producido el error '1004' en tiempo de ejecución:
Error en el método 'Range' de objeto '_Global'
y al depurar va a la instrucción que comentaba anteriormente "Range(Cells(m, n)).Select"
Os paso el codigo.
Dim n As Integer ___For j = 5 To 1000 ' para cada columna _____mec = Cells(1, j) _____n = j - 1 _____If Application.WorksheetFunction.IsText(mec) Then _______For m = 1 To 33 'para cada fila de la columna _________Range(Cells(m, n)).Select _________Selection.Copy _________Range(Cells(m, j)).Select _________Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False _______Next m _____Else _________ultima = j _________j = 1000 _____End If ___Next j
Alguien podria echarme una mano para poder hacer esto? creo que estoy cerca pero se me escapa algo y ya no se como avanzar.
Muchas gracias. |