Activer une fonction quand une plage de cellule change
Résolu/Fermé
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
-
19 déc. 2020 à 23:40
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 20 déc. 2020 à 12:14
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 20 déc. 2020 à 12:14
A voir également:
- Activer une fonction quand une plage de cellule change
- Fonction si et - Guide
- Aller à la ligne dans une cellule excel - Guide
- Comment activer windows 10 - Guide
- Changer de dns - Guide
- Excel cellule couleur si condition texte - Guide
4 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
Modifié le 20 déc. 2020 à 00:03
Modifié le 20 déc. 2020 à 00:03
Bonjour,
il faut distinguer "0" (chaine de caractère) de 0 (numérique).
De plus il faut que tu testes l'adresse ou la plage de Target que tu reçois dans les paramètres du Sub.
Inutile de faire les calcul si la cellule ayant changé n'affecte pas ton résultat.
Et pas la peine de refaire un test après le Else. Si ton 1er n'est test n'est pas valide tu veux faire ce qui suit sans autre condition.
Mais quand je vois ton code je me dis qu'il est inutile. De simples formules sur la feuille suffisent et c'est plus rapide et efficace...
eric
PS : tester Target :
il faut distinguer "0" (chaine de caractère) de 0 (numérique).
De plus il faut que tu testes l'adresse ou la plage de Target que tu reçois dans les paramètres du Sub.
Inutile de faire les calcul si la cellule ayant changé n'affecte pas ton résultat.
Et pas la peine de refaire un test après le Else. Si ton 1er n'est test n'est pas valide tu veux faire ce qui suit sans autre condition.
Mais quand je vois ton code je me dis qu'il est inutile. De simples formules sur la feuille suffisent et c'est plus rapide et efficace...
eric
PS : tester Target :
If Not Intersect(target, Range("A8:A26")) Is Nothing Then
' ton code à exécuter
End If
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
1
20 déc. 2020 à 00:50
20 déc. 2020 à 00:50
Merci Eric,
j'ai corrigé le code mais rien ne se passe...
A vous lire
Thierry
j'ai corrigé le code mais rien ne se passe...
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A8:A26")) Is Nothing Then
If Range("A8:A26").Value > 0 Then
Range("C" & i) = Sheets("Janvier 21").Range("A" & i)
Range("D" & i) = Sheets("Janvier 21").Range("B" & i)
Range("E" & i) = Sheets("Janvier 21").Range("C" & i)
Else
End If
End If
End Sub
A vous lire
Thierry
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
20 déc. 2020 à 06:57
20 déc. 2020 à 06:57
Bonjour,
dans ce cas dépose ton fichier sur cjoint.com et colle ici le lien fourni.
Je t'ai dit d'enlever le If après le Else, mais juste lui, pas tout le reste. Remet
eric
dans ce cas dépose ton fichier sur cjoint.com et colle ici le lien fourni.
Je t'ai dit d'enlever le If après le Else, mais juste lui, pas tout le reste. Remet
eric
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
1
20 déc. 2020 à 10:16
20 déc. 2020 à 10:16
Bonjour Eric,
voici mon fichier
Merci pour ton aide.
Thierry
https://www.cjoint.com/c/JLujpWl5P5N
voici mon fichier
Merci pour ton aide.
Thierry
https://www.cjoint.com/c/JLujpWl5P5N
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
20 déc. 2020 à 11:09
20 déc. 2020 à 11:09
Tu pourrais faire l'effort de préciser en quelle feuille...
C'est bien ce que je pensais, vba totalement inutile.
En C8 :
à tirer vers la droite et vers le bas.
eric
C'est bien ce que je pensais, vba totalement inutile.
En C8 :
=SI($A8=0;"";'Janvier 21'!A8)
à tirer vers la droite et vers le bas.
eric
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
1
>
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
20 déc. 2020 à 11:19
20 déc. 2020 à 11:19
Eriic,
Mon tableau n’est pas fini..
Je voulais faire du code car dans ces cellules, il peut y avoir des nouveaux clients :
J’ai créé un bouton pour entrer un nouveau contrat et selon la date de début de contrat cela remplirait les cellules des coordonnées et informations pour me faire un suivi chaque mois de facturation.
Donc les formules vont se trouver écrasées ... enfin du moins c’est ce que je pense...
Merci pour ton aide
Thierry
Mon tableau n’est pas fini..
Je voulais faire du code car dans ces cellules, il peut y avoir des nouveaux clients :
J’ai créé un bouton pour entrer un nouveau contrat et selon la date de début de contrat cela remplirait les cellules des coordonnées et informations pour me faire un suivi chaque mois de facturation.
Donc les formules vont se trouver écrasées ... enfin du moins c’est ce que je pense...
Merci pour ton aide
Thierry
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
>
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
Modifié le 20 déc. 2020 à 11:33
Modifié le 20 déc. 2020 à 11:33
Désolé mais je ne comprend pas comment tu veux que ton fichier fonctionne.
Si tu remplis avec des données, ça ne peux pas être également des données d'une autre feuille.
Il y a un manque de logique certain, et un problème de conception du fichier.
Si tu n'arrives pas à expliquer clairement, je laisse la place au suivant qui pourra te comprendre.
eric
Si tu remplis avec des données, ça ne peux pas être également des données d'une autre feuille.
Il y a un manque de logique certain, et un problème de conception du fichier.
Si tu n'arrives pas à expliquer clairement, je laisse la place au suivant qui pourra te comprendre.
eric
titi17-08
Messages postés
117
Date d'inscription
mercredi 29 janvier 2020
Statut
Membre
Dernière intervention
20 janvier 2023
1
20 déc. 2020 à 11:40
20 déc. 2020 à 11:40
A la base je demande avec courtoisie un conseil sur ma ligne de code, je ne demande pas de faire mon fichier en intégralité et de savoir si j’ai un manque de logique certain...
Merci quand même
Je mets résolu
Bien à vous éric
Thierry
Merci quand même
Je mets résolu
Bien à vous éric
Thierry
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
20 déc. 2020 à 12:14
20 déc. 2020 à 12:14
Pas de soucis, bonne continuation