1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
| Private Sub CommandButton1_Click() 'Précédent
Call IncrementListView(Increment:=-1)
End Sub
Private Sub CommandButton2_Click() 'Suivant
Call IncrementListView(Increment:=1)
End Sub
Private Sub ListView1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case Is = 8 'Touche H
Call IncrementListView(Increment:=-1)
Case Is = 2 'Touche B
Call IncrementListView(Increment:=1)
End Select
End Sub
Private Sub UserForm_Initialize()
With ListView1
With .ColumnHeaders
.Clear
.Add , , "Titre 1", 60, lvwColumnLeft
.Add , , "Titre 2", 60, 2
.Add , , "Titre 3", 60, 2
.Add , , "Titre 4", 60, 2
.Add , , "Titre 5", 50, 2
.Add , , "Titre 6", 50, 2
.Add , , "Titre 7", 60, 2
.Add , , "Titre 8", 60, 2
End With
.View = lvwReport
.FullRowSelect = False
.FlatScrollBar = True
End With
Call ChargeListView
End Sub
'********************
Private Sub ChargeListView()
Dim S As Worksheet
Dim var
Dim i&
Dim j&
Dim k&
Dim cpt&
Dim T()
'---
'#########################################
'### Nom de feuille et plage à adapter ###
Set S = Sheets("BDD")
var = S.Range("A2:H" & S.[a65536].End(xlUp).Row)
'#########################################
For i& = 1 To UBound(var, 1)
For j& = 1 To UBound(var, 2)
cpt& = cpt& + 1
ReDim Preserve T(1 To 8, 1 To cpt&)
For k& = 1 To UBound(var, 2)
T(k&, cpt&) = var(i&, k&)
Next k&
Exit For
Next j&
Next i&
If cpt& = 0 Then
ListView1.ListItems.Clear
Exit Sub
End If
With ListView1
.ListItems.Clear
.View = lvwReport
.FullRowSelect = True
.Gridlines = True
For i& = 1 To UBound(T, 2)
.ListItems.Add , , T(1, i&)
For j& = 2 To UBound(T, 1)
.ListItems(.ListItems.Count).ListSubItems.Add , , T(j&, i&)
Next j&
Next i&
End With
End Sub
Private Sub IncrementListView(Increment As Long)
On Error Resume Next
With ListView1
.SetFocus
.ListItems(.SelectedItem.Index + Increment).Selected = True
.ListItems(.SelectedItem.Index).EnsureVisible
End With
End Sub |
Partager