Macro pour remplacer la valeurs d'une cellule par un chiffre [Résolu/Fermé]

Signaler
Messages postés
15
Date d'inscription
lundi 3 août 2015
Statut
Membre
Dernière intervention
28 avril 2016
-
Messages postés
9678
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
1 mars 2021
-
Bonjour,

Dans le cadre de mon travail, je suis en train d'automatiser certaines opérations d'Excel mais je ne suis pas arrivée à trouver des solutions. Est ce que vous pouvez me donnes des suggestions de code :

- je souhaite remplacer les cellules ayant une valeur inférieur à 1 par le numéro 1 dans un tableau de données avec des calculs.

- j'ai une liste déroulante, je souhaite après chaque fois je change de valeur dans la liste déroulante, les données de la feuille sont actualisé automatiquement sans devoir cliquer sur le bouton.

Je vous remercie d'avance




5 réponses

Messages postés
9678
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
1 mars 2021
2 045
Bonjour


Peux tu envoyer un bout de ton fichier, sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse
tu fais "Coller".

Cdlmnt
Messages postés
15
Date d'inscription
lundi 3 août 2015
Statut
Membre
Dernière intervention
28 avril 2016

https://www.cjoint.com/c/FDvnxRcLtoG

voici le lien d'un pièce joint merci beaucoup pour les consignes
Messages postés
9678
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
1 mars 2021
2 045
1. Feuille Valeurs remplacées en G2 pour arronndir à l'entier le plus proche
=ARRONDI(A2*D2;0)
à tirer jusqu'en I6
2. En principe tu devrais mettre ton code dans la procedure
Private Sub Worksheet_Change(ByVal Target As Range)

End Sub
Peux tu envoyer ton code ?

Cdlmnt
Messages postés
9678
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
1 mars 2021
2 045
plus concrètement dans le module de la feuille "Feuil2"
Option Explicit

Const celreg = "A12"
Const celnom = "A17"

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range(celreg)) Is Nothing Then
' le code derrière le changement de région

Exit Sub
End If
If Not Intersect(Target, Range(celnom)) Is Nothing Then
' le code derrière le changement de nom

Exit Sub
End If
End Sub
Messages postés
15
Date d'inscription
lundi 3 août 2015
Statut
Membre
Dernière intervention
28 avril 2016

ça a marché! super! Merci beaucoup

j'ai ajouté mon code dans le tien

Private Sub Worksheet_Change(ByVal Target As Range)
Const celreg = "A2"
Const celnom = "H2"

If Not Intersect(Target, Range(celreg)) Is Nothing Then
' le code derrière le changement de région
ActiveSheet.Calculate
Range("h2").Select
Selection.ClearContents
ActiveSheet.Calculate
Exit Sub
End If
If Not Intersect(Target, Range(celnom)) Is Nothing Then
' le code derrière le changement de nom
ActiveSheet.Calculate
Exit Sub
End If


End Sub
Messages postés
15
Date d'inscription
lundi 3 août 2015
Statut
Membre
Dernière intervention
28 avril 2016

en fait pour la 1ere question j'ai pu arrondir les chiffres moi même, ce que je souhaite faire c'est de créer un macro pour remplacer les valeurs inférieurs à 1 par 1 et les mettre en rouge juste après les calculs. est ce que tu peux m'aider? merci beaucoup
Messages postés
9678
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
1 mars 2021
2 045
De tien


Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)

Bonne journée