Escribir los datos en celdas contiguas después de llenar una tabla

Adjunto Vinculo para descargar el archivo que estoy trabajando:

Formato FRC

Bueno como podrán notar he agregado un Botón para agregar defectos que esta cerca de la celda A38, cuando este va agregando el defectos este llega hasta el item 15 en la celda D52.

Quiero que cuando llegue a la Celda D52 y se agregue otro defecto, brinque automáticamente al item 16 (P37) y así sucesivamente hasta llegar Item 30 (P52)

Nota: Soy un entusiasta y me gusta aprender, lo que ha aprendido en excel a sido mediante youtube y foros, pero esto de las macros es algo relativamente nuevo de hace tres meses para acá, acudo a sus conocimientos porque no tengo un profesor que se de dedique a explicarme al detalle para que sirven cada función o cada vez que me tranco en una idea, así que me disculpo si suelo hacer muchas preguntas, pero de momento puedo entender el código en excel pero para hacer cosas nuevas me tranco bastante. Así que pido disculpas porque en verdad de a poco deseo automatizar este formato y cuando me tranque nuevamente les volveré a preguntar si no es mucha molestia.

Gracias por su tiempo

Ing. Luis Zabala

MMC Automotriz

[email protected]

Respuesta
1

Te dejo la macro con agregado y comentarios.

Private Sub CommandButton1_Click()
'ajustada x Elsamatilde
Dim fila As Integer, colx as Integer
Dim final As Integer
Dim datos As Variant
datos = TextBox1
'-----------------------
'EM: si se completó la 1er tabla en D sigue con la de P
If ActiveSheet.[D52] = "" Then
    colx = 4
ElseIf ActiveSheet.[P52] = "" Then
    colx = 16
Else
    'significa que las 2 tablas están completas
    MsgBox "Ya no quedan espacios en las tablas para agregar otros registros.", , "ATENCIÓN"
    Exit Sub
End If
'-------------------------
For fila = 38 To 52
    If ActiveSheet.Cells(fila, colx) = "" Then
        final = fila
        Exit For
     End If
Next
ActiveSheet.Cells(final, colx) = datos
'falta pase de otros datos
TextBox1 = Empty
'devuelve el control al textbox para un nuevo ingreso
TextBox1.SetFocus
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas