Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/08/2011, 16h51   #1
Invité de passage
 
Inscription : août 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : août 2011
Messages : 2
Points : 0
Points : 0
Bonjour,

J'ai pu faire fonctionner la macro de "caféine" (merci !) une première fois mais depuis plus rien : erreur 91.

J'ai repris à la lettre le code de caféine. Comment m'en sortir ?

Excusez moi pour cette erreur classique, je débute... Merci !

Bonjour,

J'ai trouvé sur ce forum un code pour changer la couleur d'une cellule par double-clics successifs (remerciement à son auteur "caféine").

J'ai pu faire fonctionner cette macro la première fois mais depuis l'"erreur 91 variable objet ou variable de bloc with non définie" s'affiche.

Je m'excuse d'avance pour cet erreur classique, je débute...

Le code :

Code :
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
Private cellColl As Collection
' collection qui va gérer le nombre de double-clics par cellule
Private Sub Worksheet_Activate()
    Set cellColl = New Collection
    Debug.Print "init"
End Sub
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim clics As Integer
 
On Error GoTo NiceError
' on récupère le nombre de double clics pour la cellule en cours
' s'il n'y en a aucun ça lève une erreur (n°5) et on l'ajoute à la collection
' si pas d'erreur on ajoute 1 aux nombres de double clic et on colore en fonction
' de la plage "témoin" Colorz
clics = (cellColl(Target.AddressLocal(False, False))) Mod (Range("ColorZ").Rows.Count)
If clics = 0 Then
    clics = 1
Else
    clics = clics + 1
End If
cellColl.Remove (Target.AddressLocal(False, False))
cellColl.add Item:=clics, key:=Target.AddressLocal(False, False)
Target.Interior.Color = Range("colorz").Cells(clics, 1).Interior.Color
 
NiceExit:
' Cancel = true c'est pour éviter de passer en mode édition
Cancel = True
Exit Sub
 
NiceError:
Select Case Err.Number
    Case 5
        cellColl.add Item:=2, key:=Target.AddressLocal(False, False)
        Target.Interior.Color = Range("colorz").Cells(2, 1).Interior.Color
 
    Case Else
        MsgBox Err.Number & vbCrLf & Err.Description, vbOKOnly
End Select
Err.Clear
GoTo NiceExit
 
End Sub
 
Private Sub Worksheet_Deactivate()
    Set cellColl = Nothing
    Debug.Print "Deinit"
End Sub
Merci !!!
blobsam est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2011, 17h08   #2
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 849
Points : 16 849
Envoyer un message via Skype™ à bbil
Erreur 91 : mais encore ... c'est quoi la suite du message ! qu'elle ligne !
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2011, 17h14   #3
Invité de passage
 
Inscription : août 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : août 2011
Messages : 2
Points : 0
Points : 0
Ca n'est pas précisé justement !
blobsam est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2011, 17h19   #4
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 849
Points : 16 849
Envoyer un message via Skype™ à bbil
Citation:
Envoyé par blobsam Voir le message
Ca n'est pas précisé justement !
pas de ligne sur fond jaune ? ou est le curseur ?

tu as bien définit la zone ColorZ ?
Citation:
C'est paramétrable en fonction d'une zone nommée ColorZ
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h17.


 
 
 
 
Partenaires

Hébergement Web