Poner formula en ultima celda desde vba excel

Necesito su colaboración muy valiosa, ya que no he podido hacer que la formula que esta en una fila se copie a la fila siguiente cuando se llenen las celdas correspondientes.

Cuando la fecha se coloca O Y P, sucede esto en W, X, Y:

W= =SI(O2="";0;1)

X==SI(P2="";0;1)

Y==+SI((W2=0)*(X2=0);1;0)+SI((W2=0)*(X2=1);2;0)+SI((W2=1)*(X2=0);3;0)+SI((W2=1)*(X2=1);4;0)

Y en A salen los números de días que lleva el documento en manos del PERITO.

=SI(Y5=1;"FALTA FECHA";SI(Y5=2;"FALTA FECHA";SI(Y5=3;HOY()-O5;SI(Y5=4;P5-O5;""))))

Necesito que las formulas corran de fila en fila programándolo desde vba.

1 respuesta

Respuesta
1

Estas instrucciones ván para el rango O:P, luego tendrás que repetirlas para el resto de los rangos o celda:

Range("O8:P8").Select
Selection.AutoFill Destination:=Range("O8:P9"), Type:=xlFillDefault

Lo que aquí se hace es copiar lo de la fila 8 y arrastrarla hasta la 9.

Las filas de inicio y fin pueden ser tomadas de alguna variable, desconozco tu macro y cómo sabrá Excel en qué fila trabajar. Pero imaginando que la celda activa es la 9 donde has rellenado otras celdas, tendrías algo como esto:

ini = activecell.Row -1 'fila anterior a la activa

Range("O" & ini & ":P" & ini).Select
Selection.AutoFill Destination:=Range("O" & ini & ":P" & ini+1), Type:=xlFillDefault

Y a continuación para A y para el otro rango.

Sdos y si todo quedó resuelto no olvides finalizar la consulta.

Buenas tardes experto, soy novato en excel, necesito ejemplo q la formula q esta en la celda v1 se copie a la celda v2 cuando se llenen las celdas correspondientes a las de O y P, Las formulas que necesito q se copien hacia abajo son las de W,X,Y, escritas a continuación:
W= =SI(O2="";0;1)
X==SI(P2="";0;1)
Y==+SI((W2=0)*(X2=0);1;0)+SI((W2=0)*(X2=1);2;0)+SI((W2=1)*(X2=0);3;0)+SI((W2=1)*(X2=1);4;0)


Y en A salen los números de días que lleva el documento en manos del PERITO.
=SI(Y5=1;"FALTA FECHA";SI(Y5=2;"FALTA FECHA";SI(Y5=3;HOY()-O5;SI(Y5=4;P5-O5;""))))
necesito que las formulas corran de de celda a celda hacia abajo programándolo desde vba.
GRACIAS, MUCHAS GRACIAS POR LA COLABORACIÓN BRINDADA

Mejor te lo explico en una muestra porque veo que vamos a perder tiempo en explicaciones.

Copia el correo que aparece en mi sitio que dejo al pie o dejame tu correo aquí.

Ya te fue enviado. Sdos!

Buenas tardes.

Si, también debe correr con O, pero la verdad muchas gracias por su ayuda.

La formula tuve q colocarla en el encabezado para que corriera cuando la fila 2 de O y P que son el primer registro tuvieran datos y por lo tanto el encabezado se perdió. Pero eso era lo que necesitaba le agradezco inmensamente, eres OK.

Posdata:

Perdone lo dummi, hasta ahora inicio en este mundo del EXCEL.

Si el detalle se puede corregir le agradezco.

Estoy inmensamente agradecido y espero poder contar con UD en un futuro.

Atentamente,

ALVARO MORENO

buenas noches que pena importunar de nuevo, tengo unos texbox que deben introducir fechas en unas celdas de excel, pero cuando los dejo vacíos, inserta 0-01-1900, desearía que dejara la celda vacía.

Gracias.

Solo puedo responder 1 tema por consulta. Cuando finalices ésta, deja la nueva en el tablón y con mucho gusto te la responderé.

Por ahora este es el ajuste para que también se ejecute con la col O:

'Esta rutina se ejecuta al cambio en cualquier celda de la col O:P, a partir de la fila 3
If (Target.Column = 16 Or Target.Column = 15) And Target.Row > 2 Then


Fijate que ahora se ejecuta recién a partir de la fila 3 en adelante, ya que si hacés cambios en fila 2 no es necesario arrastrar si esa es la 1er fila de datos.



gracias, el problema es que no puedo colocar la formula en la hoja de excel en la fila 2 porque cuando se insertan los datos por el formulario reconocería cualquier dato en esa fila y colocaría los datos en la fila siguiente dejando en blanco la fila 2.

Gracias.

Buenas noches, necesito colocar la formula en la fila 2 de w,x,y desde programación vba sin tener que colocarla en la hoja de excel.

Gracias.

Perdone por tanta molestia.

Ups ... que contradicción:

'--- No puedo colocar la formula en la hoja de excel en la fila 2... '

'... Necesito colocar la formula en la fila 2...'

¿Qué hacemos entonces?

Acabo de enviarte un ejemplo. Sdos!

buenas tardes, con todo respeto la felicito, en realidad es una experta en el tema.

Lo que me aclaraste era exactamente lo que necesitaba.

muchas gracias y nuevamente la felicito.

Lo único q falto es que la celda se tiene un formato condicional que dependiendo del numero de días se coloca de un color distinto, asi que puse la formula y el condicional en la celda 2 y q el programa la arrastre.

Pero muchisiiiiimas gracias, por su colaboración.

Posdata.

Espero poder contar con UD en próximas colsultas.

Gracias.

Con mucho gusto, pero debes finalizar primero esta consulta para que se te permita dejar otras nuevas en el tablón (reglas del foro).

Sdos!

Le agradezco inmensamente su colaboración, tiene experticia grandiosa en la materia.

Gracias, gracias por su colaboración.

Espero poder contar con su ayuda en próximas tareas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas