Excel - problema con ActiveCell.FormulaR1C1

 
Vista:

problema con ActiveCell.FormulaR1C1

Publicado por Leticia (22 intervenciones) el 27/07/2006 16:10:28
Hola. Parte del código que tengo en una macro en excel es el siguiente:
...
Case sw4 = 6
If OptionButton36.Value = True Then
Sheets("hoja1").Select
Range("g10:g23").Select
Selection.Cut
Sheets("hoja1").Select
Cells([z3], [7]).Select
ActiveSheet.Paste
Range("g10").Select
Selection.Font.ColorIndex = 5
ActiveCell.FormulaR1C1 = "CANCELADO"
Range("g11").Select
Selection.Font.ColorIndex = 5
ActiveCell.FormulaR1C1 = "CANCELADO"
End If
...

Mi problema es que necesito imprimir la palabra CANCELADO en 3 celdas más (g12,g13,g14), pero por algún motivo la macro se cae cuando incluyo el código necesario dentro del IF, es decir, si a continuación del código que imprime CANCELADO en la celda g11 pongo el código para que imprima CANCELADO en la celda g12, la macro se cae y me marca el END SUB.

Ojala alguien me pueda ayudar con esto. Muchas gracias.
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

RE:problema con ActiveCell.FormulaR1C1

Publicado por Leticia (22 intervenciones) el 27/07/2006 16:49:21
Me acabo de dar cuenta de lo que pasa. El procedimiento es demasiado largo, por ese motivo se cae la macro. ¿Hay alguna manera de evitar esto o la única solución es hacer un procedimiento aparte?
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

RE:problema con ActiveCell.FormulaR1C1

Publicado por José Luis (15 intervenciones) el 28/07/2006 11:05:29
Leticia,
La solución está en el ahorro ... de código.

En este caso

Range("g10").Select
Selection.Font.ColorIndex = 5
ActiveCell.FormulaR1C1 = "CANCELADO"
Range("g11").Select
Selection.Font.ColorIndex = 5
ActiveCell.FormulaR1C1 = "CANCELADO

se puede sustituir por
For i = 10 to 11
Range("G" & i).Select
Selection.Font.ColorIndex = 5
ActiveCell.FormulaR1C1 = "CANCELADO"
Next i

Si necesitas hacer desde la 10 hasta la 15 pondrías
For i = 10 to 15

Si quieres que sólo sean la 10, la 12, la 14 sería
For i = 10 to 15 Step 2

Siempre acabando el bucle con la instrucción Next

Es posible que tengas la macro muy sobrecargada
Espero que te sirva.

Saludos
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

RE:problema con ActiveCell.FormulaR1C1

Publicado por Leticia (22 intervenciones) el 31/07/2006 20:47:05
Gracias, voy a probar con el for. Hace muy poco que estoy programando y he tenido varias dificultades. Muchas gracias.
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

RE:problema con ActiveCell.FormulaR1C1

Publicado por José Luis (15 intervenciones) el 01/08/2006 22:40:38
Leticia,
Si te sigue dando problemas, envíame la macro para que te la reduzca.
Usa la dirección de correo quitando .nospam.please

Saludos
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