Microsoft 365 Aide pour formule qui ne fonctionne pas.

guiyom

XLDnaute Junior
Bonsoir,

Je me permets de solliciter votre aide car je ne comprends pas pourquoi la formule ne fonctionne pas.

J'utilise 3 USF qui se déclenche en fonction de la colonne ou l'on double clic, cependant la formule ne fonctionne pas sur les colonnes en vert sur la photo jointe.

Voici le code utilisé :

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

If Target.Interior.Color <> Range("A1").Interior.Color And Target.Interior.Color <> Range("A2").Interior.Color And Target.Column Mod 6 = 4 Then
Cancel = True
Target.Offset(0, 0).Select
Load UserForm_notes
UserForm_notes.Label_date.Caption = ActiveCell.Offset(0, -1)
UserForm_notes.Show
Else

If Target.Interior.Color <> Range("A1").Interior.Color And Target.Interior.Color <> Range("A2").Interior.Color And Target.Column Mod 6 = 5 Then
Cancel = True
Target.Offset(0, 0).Select
Load UserForm_notes2
UserForm_notes2.Label_date.Caption = ActiveCell.Offset(0, -2)
UserForm_notes2.Show
Else

''''''''''''''''''''''''''''''''''''''''''''''''''''''NE FONCTIONNE PAS EN VERT SUR LA CAPTURE'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
If Target.Interior.Color <> Range("A1").Interior.Color And Target.Interior.Color <> Range("A2").Interior.Color And Target.Column Mod 6 = 6 Then
Cancel = True
Target.Offset(0, 0).Select
Load UserForm_notes3
UserForm_notes3.Label_date.Caption = ActiveCell.Offset(0, -3)
UserForm_notes3.Show
End If

End If

End If

Bien cordialement
 

Pièces jointes

  • test.jpg
    test.jpg
    360.6 KB · Affichages: 21

guiyom

XLDnaute Junior
T'es sûr des conditions de ton test ???

A1 et A2 ont l'air d'avoir la même couleur de fond, qui est du gris.
Bonsoir,

Oui mais ce n'est pas bien grave, je garde la couleur A2 pour la suite car cela restreint l'ouverture des USF.

Il y a comme un problème là : par définition, un nombre ne peut pas être congru à 6 modulo 6. ;)

Oui, le problème vient manifestement d'ici mais je n'arrive pas à visualiser une solution alternative.

Cordialement
 

guiyom

XLDnaute Junior
Bon, j'ai résolu mon problème de façon pas très propre en sélectionnant colonne par colonne :
VB:
If Target.Interior.Color <> Range("A1").Interior.Color And Target.Interior.Color <> Range("A2").Interior.Color Then
If Target.Column = 6 Or Target.Column = 12 Or Target.Column = 18 Or Target.Column = 24 Or Target.Column = 30 Or Target.Column = 36 Or Target.Column = 42 Or Target.Column = 48 Or Target.Column = 54 Or Target.Column = 60 Or Target.Column = 66 Or Target.Column = 72 Then
Cancel = True
Target.Offset(0, 0).Select
Load UserForm_notes3
UserForm_notes3.Label_date.Caption = ActiveCell.Offset(0, -3)
UserForm_notes3.Show
End If
End If
End If
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
313 296
Messages
2 096 915
Membres
106 786
dernier inscrit
Mgordat