Visual Basic - Bordes para celdas en reporte

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Bordes para celdas en reporte

Publicado por Jorge (2 intervenciones) el 30/01/2022 05:42:48
Buenas noches a todos, soy bastante nuevo en esto de VBA, pero con muchas ganas de seguir mejorando. Hoy me encuentro ante la siguiente duda: Tengo userform que me genera en la hoja4 un reporte de yo puedo elegir. Sin embargo, si bien el reporte bota los mismos datos, la cantidad varia según el tipo de reporte.
Lo que deseo saber es como colocar bordes a esos datos con algún código, siendo que no siempre tienen el mismo rango. Se puede?
Gracias de antemano a todos.
Un abrazo.
Jorge
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Bordes para celdas en reporte

Publicado por Antoni Masana (558 intervenciones) el 30/01/2022 15:18:21
Se puede.
Sube un libro y lo miramos.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Bordes para celdas en reporte

Publicado por Jorge (2 intervenciones) el 30/01/2022 17:03:08
Estimado Antoni, gracias por tu respuesta.
Este código es del botón que emite uno de los reportes (seguramente no es perfecto, pero hasta ahora me funciona). Los encabezados son los mismos siempre y al escribir en unos textbox pongo el tipo de reporte que genero y como guardarlo en PDF.
Como te explicaba, me gustaría que al generarse el reporte este lo haga con los bordes de acuerdo a la cantidad de datos arrojados.
Un fuerte abrazo y gracias nuevamente.

Private Sub bt_tops_Click()
Application.Goto ActiveWorkbook.Sheets("Reportes").Range("A8:T999")
Selection.ClearContents

Hoja4.Range("b5") = txt_seccion.Value
Dim x, ufila As Long
ufila = nreg(Hoja4, 8, 1)

For x = 0 To lst_productos.ListCount - 1

Hoja4.Cells(ufila, 1) = Me.lst_productos.List(x, 0)
Hoja4.Cells(ufila, 2) = Me.lst_productos.List(x, 1)
Hoja4.Cells(ufila, 3) = Me.lst_productos.List(x, 6)
Hoja4.Cells(ufila, 4) = Me.lst_productos.List(x, 7)
Hoja4.Cells(ufila, 5) = Me.lst_productos.List(x, 3)
Hoja4.Cells(ufila, 6) = Me.lst_productos.List(x, 5)
Hoja4.Cells(ufila, 7) = Me.lst_productos.List(x, 16)
Hoja4.Cells(ufila, 8) = Me.lst_productos.List(x, 24)
Hoja4.Cells(ufila, 9) = Me.lst_productos.List(x, 25)
Hoja4.Cells(ufila, 10) = Me.lst_productos.List(x, 2)
Hoja4.Cells(ufila, 11) = Me.lst_productos.List(x, 4)
Hoja4.Cells(ufila, 12) = Me.lst_productos.List(x, 15)
Hoja4.Cells(ufila, 13) = Me.lst_productos.List(x, 17)
Hoja4.Cells(ufila, 14) = Me.lst_productos.List(x, 18)
Hoja4.Cells(ufila, 15) = Me.lst_productos.List(x, 19)
Hoja4.Cells(ufila, 16) = Me.lst_productos.List(x, 20)
Hoja4.Cells(ufila, 17) = Me.lst_productos.List(x, 21)
Hoja4.Cells(ufila, 18) = Me.lst_productos.List(x, 23)
Hoja4.Cells(ufila, 19) = Me.lst_productos.List(x, 27)
Hoja4.Cells(ufila, 20).FormulaLocal = Me.lst_productos.List(x, 26)
With Hoja4.Cells(ufila)
.NumberFormat = "dd/mm/yyyy"
End With
ufila = ufila + 1
Next x

MsgBox "Proceso finalizado"
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Bordes para celdas en reporte

Publicado por Antoni Masana (558 intervenciones) el 31/01/2022 14:54:25
Sube un libro y lo miramos.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar