Téléchargement
illégal
Posez votre question Signaler

VBA la méthode range de l'objet global a ....

guillaumesk850 - Dernière réponse le 17 mai 2011 à 00:14
Bonjour,
Je suis débutant en VBA et je souhaite développé mon premier programme dans lequel je pourrais mettre en couleur les cellules qui correspondent a une occupation d'un agent.
Voici mon code :
Dim rRange As Range, Couleur As Integer, ColDeb As Integer, ColFin As Integer
Dim vI As Variant
Set rRange = Range([A4], [A9])
For Each vI In rRange
If cbagent.Text = vI Then
L = vI.Row
Exit For
End If
Next vI
Index = frameOptDpl.ActiveControl.TabIndex
Select Case Index
Case 0
Couleur = 3
Case 1
Couleur = 41
Case 2
Couleur = 43
Case 3
Couleur = 35
End Select
With Sheets("Juin")
Dates = Application.Transpose(Application.Transpose(.Range("C5:AF5")))
ColDeb = Application.Match(CLng(DTPicker1), Dates)
ColFin = Application.Match(CLng(DTPicker2), Dates)
Range("(L, ColDeb):(L, ColFin)").Interior.ColorIndex = 6
...
C'est donc le dernier Range("L, ...) qui pose problème
Je compte sur vous pour m'apporter un peu d'aide
Merci d'avance :)
Lire la suite 

VBA la méthode range de l'objet global a »

2 réponses
Réponse
+0
moins plus
Bonjour,

Il y a des choses que je ne comprends pas:

Tu déclares vI de type Variant et tu l'utilises comme un objet dans For Each vI In rRange, ensuite tu testes si un contrôle contient un objet dans if cbagent.Text = vI then, il y a déjà là une incompatibilité.

Dans Range("(L, ColDeb):(L, ColFin)").Interior.ColorIndex = 6 ce qui est entre guillemet est considéré comme une chaîne de caractère et non comme une variable

;o)
guillaumesk850 - 17 mai 2011 à 00:14
Merci Polux31 pour ta réponse :)

Pour ce qui est du "Range" il serait peut être plus correct d'écrire :
Range(.Cells(L, ColDeb), .Cells(L, ColFin)).Interior.ColorIndex = 6

Par ce qui est de la première partie (l'incompatibilité), aurais tu une solution a me proposer ?
Ajouter un commentaire
Ce document intitulé « VBA la méthode range de l'objet global a .... » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?