Erreur d'exécution '13': Incompatibilité de Type
Résolu/Fermé
SLM-BHY
Heliotte
- Messages postés
- 28
- Date d'inscription
- vendredi 21 décembre 2012
- Statut
- Membre
- Dernière intervention
- 7 mai 2015
Heliotte
- Messages postés
- 1491
- Date d'inscription
- vendredi 26 octobre 2012
- Statut
- Membre
- Dernière intervention
- 28 janvier 2013
A voir également:
- Incompatibilité de type vba
- Erreur d'exécution 13 - Meilleures réponses
- Erreur d'execution 13 vba - Meilleures réponses
- Erreur d'exécution 13 Incompatibilité de type ✓ - Forum - Programmation
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum - Excel
- Incompatibilité de type vba ✓ - Forum - VB / VBA
- Erreur 13 incompatibilité de type vba ✓ - Forum - VB / VBA
- Erreur d’exécution '13' : incompatibilité de Type (Vba Access) ✓ - Forum - Access
3 réponses
Bonjour
Il y a bien un problème avec ton code
Quand tu sélectionnes une zone de plusieurs cellules, ton objet Target contient plusieurs cellules et ta comparaison If Target = "voiture" se heurte bien à un problème de type.
Il faut boucler sur toutes les cellules de Target pour ne comparer qu'une seule cellule à la fois.
Il y a bien un problème avec ton code
Quand tu sélectionnes une zone de plusieurs cellules, ton objet Target contient plusieurs cellules et ta comparaison If Target = "voiture" se heurte bien à un problème de type.
Il faut boucler sur toutes les cellules de Target pour ne comparer qu'une seule cellule à la fois.
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim ligne As Integer, col As Integer ' ' For ligne = Target.Row To Target.Row + Target.Rows.Count - 1 For col = Target.Column To Target.Column + Target.Columns.Count - 1 If col = 2 Then If Cells(ligne, col) = "voiture" Then Cells(ligne, 4).Value = "loué" End If End If Next col Next ligne End Sub
9 janv. 2013 à 12:08
Meilleurs voeux !
Je n'avais pas capté "sur une plage de 10 ligne" car j'ai lu en diagonale (trop pressé ce matin)
Merci pour les explications .. ça me servira de leçon !