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
|
Private Sub Form_Load() 'pour faire un essai
Dim i As Integer
For i = 1 To 19
MSFlexGrid1.Row = i
MSFlexGrid1.Text = Chr(64 + i) 'mettre une valeur dans la flexgrid
Next
End Sub
Private Sub cmdVersBas_Click()
Dim LGn%, C%, i%, TB() As String
C = MSFlexGrid1.Cols
ReDim TB(1 To 2, 0 To C) As String 'associe automatiquement au nombre de colonnes de la flexgrid
LGn = MSFlexGrid1.RowSel
If LGn < 1 Or (LGn + 1) = MSFlexGrid1.Rows Then Exit Sub
TB(1, 0) = MSFlexGrid1.TextMatrix(LGn, 0)
TB(2, 0) = MSFlexGrid1.TextMatrix(LGn - 1, 0)
GoSub INVERSE
Do
If MsgBox("Descendre encore cet élément ?", vbYesNo + vbQuestion) = vbYes Then
If LGn >= 1 And LGn < MSFlexGrid1.Rows - 2 Then
LGn = LGn + 1
GoSub INVERSE
End If
Else: Exit Do
End If
Loop
Exit Sub
INVERSE:
MSFlexGrid1.AllowBigSelection = False
For i = 1 To C - 1
TB(1, i) = MSFlexGrid1.TextMatrix(LGn, i)
TB(2, i) = MSFlexGrid1.TextMatrix(LGn + 1, i)
Next i
For i = 0 To C - 1
MSFlexGrid1.TextMatrix(LGn, i) = TB(2, i)
MSFlexGrid1.TextMatrix(LGn + 1, i) = TB(1, i)
Next i
Return
End Sub
Private Sub cmdVersHaut_Click()
Dim LGn%, C%, i%, TB() As String
C = MSFlexGrid1.Cols
ReDim TB(1 To 2, 0 To C) As String 'associe automatiquement au nombre de colonnes de la flexgrid
LGn = MSFlexGrid1.RowSel
If LGn <= 1 Then Exit Sub
TB(1, 0) = MSFlexGrid1.TextMatrix(LGn, 0)
TB(2, 0) = MSFlexGrid1.TextMatrix(LGn - 1, 0)
GoSub INVERSE
Do
If MsgBox("Remonter encore cet élément ?", vbYesNo + vbQuestion) = vbYes Then
If LGn > 2 Then
LGn = LGn - 1
GoSub INVERSE
End If
Else: Exit Do
End If
Loop
Exit Sub
INVERSE:
For i = 1 To C - 1
TB(1, i) = MSFlexGrid1.TextMatrix(LGn, i)
TB(2, i) = MSFlexGrid1.TextMatrix(LGn - 1, i)
Next i
For i = 0 To C - 1
MSFlexGrid1.TextMatrix(LGn, i) = TB(2, i)
MSFlexGrid1.TextMatrix(LGn - 1, i) = TB(1, i)
Next i
Return
End Sub |
Partager