thibaultanguy
Messages postés45Date d'inscriptionjeudi 3 juillet 2008StatutMembreDernière intervention16 novembre 2012
-
6 janv. 2011 à 15:34
thibaultanguy
Messages postés45Date d'inscriptionjeudi 3 juillet 2008StatutMembreDernière intervention16 novembre 2012
-
7 janv. 2011 à 10:19
Bonjour le forum,
Je pense notamment à tous ceux qui ont eu l'amabilité de répondre à mes précedentes questions qui m'ont permis d'évoluer dans mon projet. Meilleurs voeux pour cette nouvelle année.
Ma question : Comme certains le savent, je travaille sur une liste de service dont chaque ligne calendaire sur excel représente le décompte des absences d'un agent. Ces absences sont enregistrées dans une cellule sélectionnée à l'aide d'un userform multichoix (congé, récupération, maladie etc...). Pour pinailler un peu, j'ai crée ce code qui fonctionne bien :
Private Sub CommandButtoncongé_Click()
ligne = ActiveCell.Row
If ligne 1 And Range("a1").Value 0 Then
MsgBox "Plus de Congé"
Exit Sub
ElseIf ligne = 1 And Range("a1").Value >= 1 Then MsgBox "ok..."
Selection.Value = "CA"
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
Unload userformabsences
ActiveCell.Offset(RowOffset:=0, ColumnOffSet:=2).End(xlUp).Activate
End If
End Sub
Seulement, lorsque je veux l'étendre à l'ensemble des lignes qui composent les différents agents, j'éprouve des difficultés, d'autant que pour la ligne 2, l'objet range sera a2, pour la ligne 3, l'objet range sera a3 etc...
Peut-on avec ce seul bouton gérer plusieurs lignes de manière indépendantes ? Merci de me répondre si une solution existe !!!
Bien à vous
A+
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201315 7 janv. 2011 à 08:57
Salut,
ben oui !!! et c'est même plutôt simple :
Private Sub CommandButtoncongé_Click()
ligne = ActiveCell.Row
If Range("a" & ligne).Value = 0 Then
MsgBox "Plus de Congé"
Exit Sub
ElseIf Range("a" & ligne).Value >= 1 Then MsgBox "ok..."
Selection.Value = "CA"
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
Unload userformabsences
ActiveCell.Offset(RowOffset:=0, ColumnOffSet:=2).End(xlUp).Activate
End If
End Sub