
30/11/2009, 21:38
|
| | Fecha de Ingreso: enero-2008 Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 17 años, 3 meses Puntos: 10 | |
Formato en columnas de Listview Necesito ponerle formato a los campos numericos de un listview, utilizo una funcion que encontre para cargar un recordset, los campos numericos son precio y precio2 dejo el codigo que tengo y si tienen otro que funciona mejor estaria bien.
Código:
Sub Cargar_ListView(ListView As ListView, sql As String, PathBd As String)
Dim Campo As Integer
On Error GoTo ErrSub
'Variable para los SubItem del LV
Dim Item As ListItem
Dim i As Long
'Nuevo objeto Connection y objeto Recordset
Set cnn = New Connection
Set Rst = New Recordset
'Abre la base de datos
cnn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PathBd)
'Llena el Recordset
Rst.Open sql, cnn, adOpenDynamic, adLockOptimistic
With ListView
'Vista de reporte
.View = lvwReport
' Elimina los item y los encabezado de columna
.ListItems.Clear
.ColumnHeaders.Clear
End With
Me.MousePointer = vbHourglass
'Agrega los nombres campo junto con los encabezados de columna para el ListView
'For Campo = 0 To Rst.Fields.Count - 1
'ListView.ColumnHeaders.Add , , Rst.Fields(Campo).Name
'Next
ListView.ColumnHeaders.Add , , "codigo", 1000
ListView.ColumnHeaders.Add , , "nombre", 4000
ListView.ColumnHeaders.Add , , "precio", 1000, lvwColumnRight
ListView.ColumnHeaders.Add , , "precio2", 1000, lvwColumnRight
' Recorre todos los registros del Recordset
While Not Rst.EOF
'Agrega el Item
Set Item = ListView.ListItems.Add(, , Rst.Fields(0), , 1)
i = 1
'Agrega los SubItem al ListView mediante la variable ITEM
For Campo = 1 To Rst.Fields.Count - 1
'si el dato no es de tipo Null lo agrega
If Not IsNull(Rst.Fields(Campo)) Then
Item.SubItems(i) = Rst.Fields(Campo)
End If
i = i + 1
Next
'Siguiente registro
Rst.MoveNext
Wend
Me.MousePointer = vbDefault
Exit Sub
'Error
ErrSub:
MsgBox Err.Description, vbCritical, "Error"
Me.MousePointer = vbDefault
End Sub
|