Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA - Liste en cascade et déplacement de formule vers la droite

lamailloche

XLDnaute Junior
Bonjour le Forum,
Liste en cascade : pour être positionner sur le 1er élément de la liste pour le second menu, j'ai dans Visual Basic Editor, insérer dans le Worsheet/Change de la feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$2" And Target.Count = 1 And Target <> "" Then
Target.Offset(2, 0) = Sheets("Paramètres").Range("GT_Manager")(1).Offset(1, Application.Match(Target, [PLTnew], 0) - 1)
End If
End Sub

Là, c'est ok !

Le souci vient après, quand je veux tirer une formule vers la droite sur plusieurs colonnes (1 colonne, ca fonctionne) par rapport à une cellule active, visual affiche une erreur "Incompatibilité de type" et pointe sur la ligne :
If Target.Address = "$D$2" And Target.Count = 1 And Target <> "" Then

Je ne comprends pas (il faut dire que j'ai pompé sur le site de J Boisgontier et beaucoup de choses m'échappent)
En espérant avoir été claire et que vous trouverez une réponse à mon problème.
Merci
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : VBA - Liste en cascade et déplacement de formule vers la droite

Bonjour,


Code:
  If Not Intersect(Target, [d2:e2]) Is Nothing And Target.Count = 1 And Target <> "" Then

JB
 
Dernière édition:

lamailloche

XLDnaute Junior
Re : VBA - Liste en cascade et déplacement de formule vers la droite

Merci mais j'avoue que je ne comprends pas, alors je joins une copie d'écran de ma page excel.

If Not Intersect(Target, [d2:e2]) Is Nothing And Target.Count = 1 And Target <> "" Then

Pourquoi [d2:e2]) ?
 

Pièces jointes

  • ScreenShot.bmp
    883.5 KB · Affichages: 53

lamailloche

XLDnaute Junior
Re : VBA - Liste en cascade et déplacement de formule vers la droite

Le fichier demandé avec les formules.
Bonne soirée
 

Pièces jointes

  • Forum.xls
    818.5 KB · Affichages: 41
  • Forum.xls
    818.5 KB · Affichages: 47
  • Forum.xls
    818.5 KB · Affichages: 47

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : VBA - Liste en cascade et déplacement de formule vers la droite

Bonjour,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$D$2" And Target.Count = 1 Then
    If Target <> "" Then
       Target.Offset(2, 0) = Sheets("Paramètres").Range("GT_Manager")(1).Offset(1, Application.Match(Target, [PLTnew], 0) - 1)
    End If
  End If
End Sub

JB
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…