Trazado de línea horizontal mediante macro en excel 2007

Hola Estoy Haciendo en excel 2007, un libro diario, donde se hace Asientos contables.

Necesito, hacer un cieere de cada dia que se registra. He visto en otros programas, que. Cuando se indica la fecha, automáticamente, se traza una linea horizontal, ya sea debajo o sobre la fecha. Entonces quiero hacer eso.

1 Respuesta

Respuesta
1

Pero, supongo que tienes una columna en donde pones la fecha, durante todo el día estás registrando asientos contables, y en esa columna de fecha, ¿por cada asiento pones la fecha?

¿O no pones nada en la columna fecha y en el momento en que pongas una fecha en ese momento que se ponga la línea horizontal?

Si en cada asiento contable pones la fecha, ¿entonces cómo saber que es el último asiento del día?

Si en el Asiento Contable, haré Tres Columnas. en una Ira el Debe en otra el Haber y en la Tercera (que la indicare en el medio), la Fecha.

Yo cargo los datos del Debe y del Haber. cuando termino de cargar el debe y el haber, indico la fecha del siguiente asiento. y allí es que quiero que se trace una linea HORIZONTAL.

Débitos Fecha Créditos Debe Haber

Mercadería 100

Caja 100

-----------------------25/04/2013-----------------------------------------

Entonces la macro que quiero hacer, es que cuando le indique por ejemplo 25/04/2013, se trace una linea horizontal automáticamente.

Muchas gracias

Sigue las Instrucciones para poner la macro en worksheet
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
4. Del lado derecho copia la macro

Private Sub Worksheet_Change(ByVal Target As Range)
'por.DAM
If Not Intersect(Target, Columns("B")) Is Nothing Then
    If IsDate(Target) Then _
        Range("A" & Target.Row & ":E" & Target.Row).Borders(xlEdgeBottom).LineStyle = xlContinuous
End If
End Sub

La línea se pone cuando ingresas una fecha en la columna "B", si quieres otra columna, cambia en esta parte de la macro

If Not Intersect(Target, Columns("B")) Is Nothing Then

La línea se pone por debajo de la fecha desde la columna A hasta la E, si quieres otras columnas o más columnas, cambia en esta parte de la macro

Range("A" & Target.Row & ":E" & Target.Row)

Saludos. DAM

Si es lo que necesitas.

Muchas pero Muchas Gracias!!! Excelente. Esta muy buena, tu solución. funciona de diez. (Pude modificar incluso la columna y también el rango de la linea...).

Muchas Gracias Nuevamente.

Cordialmente

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas