Insertar datos de formulario en hoja

Buenas, he creado un formulario con una serie de datos, ahora lo que quiero es insertar estos en la fila 5 de una hoja, y que cada vez que inserto, me baje los datos existentes. Lo he conseguido con el siguiente código
Private Sub INSERTAR_Click()
Dim fila As Object
For Each fila In Hoja1.Range("5:5000").Rows
If IsEmpty(fila.Cells(1, 5)) Then
fila.Insert
fila.Cells(0, 1) = TREBALLADOR.Text
fila.Cells(0, 2) = ACTIVITAT.Text
fila.Cells(0, 3) = REF_PROJECTE.Text
fila.Cells(0, 4) = vcDTP1.Value
fila.Cells(0, 5) = VIATGE.Text
fila.Cells(0, 6) = MOTIU.Text
fila.Cells(0, 7) = DISTANCIA.Text
fila.Cells(0, 9) = gastos_peatges.Text
fila.Cells(0, 10) = UNITATS_PEATGES.Text
fila.Cells(0, 12) = gastos_restaurants.Text
fila.Cells(0, 13) = gastos_garatges.Text
fila.Cells(0, 15) = DETALL_TREBALL.Text
fila.Cells(0, 16) = HORA_COMENÇAMENT.Text
fila.Cells(0, 17) = HORA_FINAL.Text
fila.Cells(0, 18) = HORES_SUELTES.Text
fila.Cells(0, 19) = HORES_TREBALLADES.Text
fila.Cells(0, 20) = PROFESSIONAL.Text
fila.Cells(0, 21) = PREU_HORA.Text
fila.Cells(0, 23) = MOTIU_CORREU.Text
fila.Cells(0, 24) = gastos_correus.Text
fila.Cells(0, 25) = MOTIU_ALTRES.Text
fila.Cells(0, 26) = gastos_pagaments_compte.Text
fila.Cells(0, 27) = MOTIU_PAGAMENTS_COMPTE.Text
fila.Cells(0, 28) = gastos_altres.Text
fila.Cells(0, 29) = PROFESSIONAL.Text
End If
Exit For
Next
End Sub
Pero solo me funciona cuando utilizo por vez primera el archivo, luego si lo cierro y lo vuelvo a abrir, ya no me inserta nada.
También necesitaría insertar fórmulas en algunas celdas que quedan vacías . Por ej. Que la cell (0,8), me la multiplique por la cell (0,7) *0,15.
Espero haberme explicado lo suficientemente bien, muchísimas gracias

1 respuesta

Respuesta
1
Estás evaluando si la celda de fila 6 está vacía y eso solo se da la primera vez.
Me parece que debieras cambiar el orden de estas 2 y dejarlas así:
fila.Insert
If IsEmpty(fila.Cells(0, 5)) Then
Ahora evalúa si la 5 está vacía y rellena de datos. Probála y comentame si queda bien.
Para rellenar celdas con fórmulas (es otro tema...) confírmame en otra consulta si necesitas el cálculo o la fórmula.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas