Pb VBA Excel - tirer une formule

Utilisateur anonyme -  
 Tribal -
Bonjour,
J'ai regardé auparavant les questions résolues, mais je n'ai pas trouvé de solution. Donc je vous soumets mon problème sur VBA excel.
- dans la colonne A, j'ai une liste de valeurs sur x lignes (le nombre de lignes est changeant)
- dans la colonne B, je voudrais multiplier les valeurs de la colonne A par un nombre (qui est en C1)

J'arrive à réaliser cette multiplication en A1, mais pas à répéter cette multiplication sur toutes les cellules non vides de la colonne A.

Je vous remercie d'avance pour votre aide
Configuration: Windows XP
Internet Explorer 6.0

20 réponses

  1. LePierre Messages postés 249 Statut Membre 338
     
    bonjour

    Voici la macro correspondante à ton souhait :
    Sub test2()
        Lig = Cells(1, 1).End(xlDown).Row
        Constante = Range("C1").Value
        For i = 1 To Lig
            Cells(i, 2).Value = Cells(i, 1).Value * Constante
        Next i
    End Sub

    à plus
    2
  2. nvaros Messages postés 144 Statut Membre 17
     
    Je ne comprends pas ta requête
    1
  3. LePierre Messages postés 249 Statut Membre 338
     
    bonjour

    il suffit d'écrire en B1 la formule : =A1*$C$1
    et de recopier cette formule dans les cellules de la colonne B
    Pas besoin de VBA pour ça.

    à plus
    1
  4. Utilisateur anonyme
     
    Si, j'ai besoin de savoir comment faire sur VBA, car ce n'est qu'un extrait de l'ensemble de la macro qui comprend ensuite une suppression de colonnes. Je veux éviter de mettre des formules directement sur le fichier excel.
    Merci quand même
    1
    1. nvaros Messages postés 144 Statut Membre 17
       
      Utilise l'enregistreur de macro
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. nvaros Messages postés 144 Statut Membre 17
     
    Je ne sais pas ce qu'elle veut faire.

    Elle ou il dit : "J'arrive à réaliser cette multiplication en A1, mais pas à répéter cette multiplication sur toutes les cellules non vides de la colonne A".

    Ce n'est pas en A1 mais en B1.

    De plus, je ne comprends pas le sens de "répéter cette multiplication sur toutes les cellules non vides de la colonne A".

    Qu'est-ce que tu obtiens alors?
    1
  7. Utilisateur anonyme
     
    Effectivement c'est en B1.
    Je vais essayer d'être plus explicite : je voudrais ensuite réaliser la même multiiplication dans la colonne B jusqu'à ce qu'il n'y ait plus de valeurs dans la colonne A (et ainsi ne pas avoir de "0" dans la colonne B, sauf évidemment si dans la colonne A une ou plusieurs cellules ont "0" comme valeur)

    Par exemple, si en colonne A j'ai des valeurs de la lignes 1 à 9, je voudrai q la macro arrête de multiplier à la 9e ligne.
    1
  8. nvaros Messages postés 144 Statut Membre 17
     
    Comme je t'ai dit, utilise l'enregistreur de macro, il est très utile
    1
  9. Utilisateur anonyme
     
    J'ai essayé. Sauf que dans mon cas, le nombre de lignes change à chaque fois q je lance la macro (données différentes), alors qu'avec l'enregistreur de macro, tu sélectionne une plage fixe de cellules et je n'ai pas envie de changer à chaque fois la macro.
    Il faut utiliser quelquechose avec un i=i+1 et do...loop, je pense, mais je n'y arrive pas.
    1
    1. nvaros Messages postés 144 Statut Membre 17
       
      Je te redis je ne comprends pas ta requete car tuveux simplement qu'en B1 ta formule multiplie A1 par ta cellule fixe C1 etv ainsi de suite
      0
  10. Utilisateur anonyme
     
    C'est ça, mais par une macro.
    1
  11. nvaros Messages postés 144 Statut Membre 17
     
    Tu peux le faire avec l'enregistreur de macro
    1
  12. nvaros Messages postés 144 Statut Membre 17
     
    A quoi correspond ta cellule C1
    1
  13. Utilisateur anonyme
     
    Je vous remercie tous pour votre aide, je suis en train de modifier totalement la macro et ça semble opérationnel, je suis en train d'y travailler. Mais merci encore
    1
  14. nvaros Messages postés 144 Statut Membre 17
     
    Reflechis logemment avant de poser une question car toute seule tu peux aller loin mais il faut avoir de la volonté
    1
  15. Utilisateur anonyme
     
    Mais vous m'avez inconsciemment aidé avec vos suggestions, ça m'a fait réfléchir et voilà.
    1
  16. nvaros Messages postés 144 Statut Membre 17
     
    C'est bien.

    Je te souhaite de reussir ta requête.
    1
  17. nvaros Messages postés 144 Statut Membre 17
     
    Juste une petite question Carox.

    Pourquoi fais-tu cela?

    Pour le travail ou non.
    1
  18. Utilisateur anonyme
     
    C'est pour le travail. J'ai plusieurs colonnes d'un fichier que je dois copier et mettre dans un autre, sachant que les colonnes ne sont pas dans le même ordre, des données sont à ajouter(valeurs à multiplier), supprimer ou masquer (filtre réalisé)... Et comme je dois faire ça 10 ou 20 fois, je voulais faire une macro pr aller un peu plus vite.
    Mais merci.
    1
    1. nvaros Messages postés 144 Statut Membre 17
       
      Tu travailles dans quel domaine?
      0
  19. Utilisateur anonyme
     
    En quoi cela t'intéresse ?
    Je suis dans l'industrie et j'utilise excel pr le travail
    1
  20. nvaros Messages postés 144 Statut Membre 17
     
    C'est juste une question.

    Si tu ne souhaites pas répondre, tu ne réponds pas.

    C'était simplement pour voir l'utilité que tu en fais.
    1
  21. Utilisateur anonyme
     
    Oh ! Merci bcp lePierre.
    J'ai testé et cela marche sans problème.
    0
    1. Tribal
       
      J'ai lu le probleme, j'ai exactment le meme probleme. Merci le Pierre !!!
      0