Macro pour remplacer la valeurs d'une cellule par un chiffre

Résolu
mthuong Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 11033 Statut Membre -
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

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    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
    0
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    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
    0
    1. ccm81 Messages postés 11033 Statut Membre 2 434
       
      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
      0
    2. mthuong Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
       
      ç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
      0
  3. mthuong Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
     
    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
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. ccm81 Messages postés 11033 Statut Membre 2 434
     
    De tien

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

    Bonne journée
    0