phpamateur
Messages postés18Date d'inscriptionsamedi 19 juin 2004StatutMembreDernière intervention12 janvier 2010 19 nov. 2009 à 11:13
Pour ce sauvegarder la position actuelle il y as pas si simple que ça :
Private Sub couleur_lignes()
Dim i, j As Long
Dim tempCol, tempRow As Long
With dgAPI
tempCol = .Col
tempRow = .Row
'Colorer les lignes
If .Rows > 1 Then
For i = 1 To .Rows - 1
'Lignes paires rouge
If (i - 1) Mod 2 <> 0 Then
.Row = i
For j = 1 To .Cols - 1
.Col = j
.CellBackColor = &HFFC0C0
Next
End If
Next
End If
.Col = tempCol
.Row = tempRow
End With
End Sub
phpamateur
Messages postés18Date d'inscriptionsamedi 19 juin 2004StatutMembreDernière intervention12 janvier 2010 19 nov. 2009 à 11:09
Merci pour ce bout de code.
shervy
Messages postés62Date d'inscriptionlundi 24 décembre 2001StatutMembreDernière intervention15 octobre 2007 16 janv. 2002 à 13:07
La seule chose à ajouter est qu'il faut sauvegarder la position actuelle avant de lancer la routine. Autrement dit, il faut garder en mémoire le .Row et .Col de façon à ce que quand la routine rend la main à l'utilisateur celui ci soit toujours au même endroit (même cellule) et non sur la dernière colonne de la dernière ligne.
19 nov. 2009 à 11:13
Private Sub couleur_lignes()
Dim i, j As Long
Dim tempCol, tempRow As Long
With dgAPI
tempCol = .Col
tempRow = .Row
'Colorer les lignes
If .Rows > 1 Then
For i = 1 To .Rows - 1
'Lignes paires rouge
If (i - 1) Mod 2 <> 0 Then
.Row = i
For j = 1 To .Cols - 1
.Col = j
.CellBackColor = &HFFC0C0
Next
End If
Next
End If
.Col = tempCol
.Row = tempRow
End With
End Sub
19 nov. 2009 à 11:09
16 janv. 2002 à 13:07