xls erreur sur code "If Target =" lors d'insertion de ligne - VB/VBA/VBS - Programmation
Marsh Posté le 11-08-2013 à 13:37:22
Bonjour,
merci d'utiliser l'icône prévue pour le code la prochaine fois …
En fait l'erreur est tout à fait logique car Target représente l'ensemble des cellules modifiées !
Donc quand une ligne est insérée ou supprimée, plusieurs cellules sont donc concernées …
Il faut donc commencer le test par If Target.Count = 1 …
Marsh Posté le 11-08-2013 à 20:42:07
Marc
ça tourne impec ! avec l'explication qui va bien comme d'hab, merci.
Excuse j'avais pas vu que y'avait une icône pour le code, j'y penserais le prochain coup.
Marsh Posté le 10-08-2013 à 18:50:45
Bonjour à tous,
voilà mon problème:
via ce bout de code (en privé dans la feuille) dans un tableau je surveille tout changement survenent non pas sur la colonne H complète mais à partir de H10 à H10000, donc lorsque la valeur 1 est saisie la date du jour s'insère sur la même ligne en colonne A "(Offset(0, -7)"
'If Target.Column = 8 Then 'surveille la colonne complète
If Not Intersect(Target, Range("H10:H10000" )) Is Nothing Then
If Target = "1" Then
If Target.Offset(0, -7) <> "" Then
If MsgBox("Il y'a déja une date de début renseignée : " & Target.Offset(0, -7).Value & Chr(13) & "voulez-vous continuez et incrémenter la date du jour ?", vbExclamation + vbYesNo) = vbNo Then
Exit Sub
End If
End If
Target.Offset(0, -7) = Format(Now, "mm/dd/yyyy" )
End If
End If
End Sub
Le problème est que lorsque qu'on insert une ligne au niveau de la 10ème (haut du tableau)
ça plante et y'a débogage sur la ligne If Target = "1" Then
Par-contre ça ne le fait pas si je surveille la colonne complète avec 'If Target.Column = 8 Then en remplacement de If Not Intersect(Target, Range("H10:H10000" )) Is Nothing Then
mais ne convient pas à l'utilisation voulue le tableau démarrant à la ligne 10 et ayant d'autres valeurs changeante de H1 à H8
Si vous avez une idée ?