Ayuda con un código en vba

tengo un código que funciona bien pero que me gustaría que me ayudaran a agregarle algunos detalles, en la planilla en que lo estoy ocupando me sirve para ingresar fecha, combustible inicial, combustible ingresado y combustible egresado, pero mi problema surge que el combustible inicial solo debe ser ingresado una sola vez, ya que a la segunda depende del combustible final de la fila anterior ingresada (si suponemos que la celda del combustible final que la ingresa la macros es la "F5" entonces en la siguiente fila el combustible inicial debe ser igual a esa celda "F5") pero este código hace que las celdas se corran y al final no me ayuda mucho con lo que quiero conseguir.

les agradecería mucho si pudiesen ayudarme por favor.

Sub Macro3()
  Dim hoja1 As Range, Dato As Range, x As Byte
  Set hoja1 = Range("b5:e5")
  With Sheets("hoja2").Cells(Rows.Count, 2).End(xlUp)(2)
  For Each Dato In hoja1
  .Offset(, x) = Dato: x = x + 1
  Next Dato
  End With
  hoja1 = NullString
End Sub

1 respuesta

Respuesta
2

Puedes poner cómo tienes tus datos y cómo quieres que queden

Saludos. Dam

mira los datos están asi:

hoja 1 "b5" se ingresan datos de fecha

hoja 1 "c5" se ingresan datos de combustible inicial

hoja 1 "d5" se ingresan datos de combustible ingresado

hoja 1 "e5" se ingresan datos de combustible egresado

los que se pegan en "b6", "c6","d6","e6" de la hoja 2 respectivamente.

esto sucede cada vez que apretó un botón que coloque, luego cuando vuelvo apretar el botón necesito que pegue la información solo en las celdas "b6","d6" y "e6" ya que el combustible inicial se coloca 1 sola vez, por que luego en la celda "c7" es utilizada en la formula para generar el combustible final ("f6") que expresada en celdas quedaría asi: f6=c6+ d6- e6 y en la siguiente fila queda f7=f6+ c7- d7 y asi sucesivamente hasta llegar al final de la base de datos.

y es ahi mi problema por que la macro me corre la formula y no se que hacer.

si me puedes ayudar seria espectacular, te lo agradecería mucho.

Más o menos entendí, pero cómo sabes cuando la celda C6 es inicial, porque lleva valor, ¿y qué pasa si a la siguiente corrida el valor de C5 le pones 0?

Igual para que me expliques mejor, envíame tu archivo con la macro y los ejemplos.

tienes toda la razón que soy pavo no me di cuenta, perdón por hacerte perder el tiempo la macro si funciona como yo quiero fue un error de escritura, si hubiera escrito lo mismo que te dije a ti en las formulas no hubiese tenido problemas, tenia una celda cambiada a como quería y eso no se por que, hacia bajar las filas que seguían. para que me entiendas mejor tenia puesto en la formula de la fila siguiente f7= c7+ d7- e7 en vez de f7=f6+ d7 - e7 y cuando tenia esa formula puesta la macro tiraba las celdas hacia abajo si me puedes explicar eso seria fantástico.

bueno en todo caso igual la formula como la tengo ahora funciona asi que gracias por que me ayudaste a darme cuenta de mi propio error, te pasaste.

No te preocupes, hay problemas grandes y problemas pequeños.

Que bueno que ya lo solucionaste.

Saludos. Dam

Podrías finalizar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas