IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Calcul pourcentage / VB ou excel ?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 153
    Par défaut Calcul pourcentage / VB ou excel ?
    bonjour,

    Voilà mon souci.

    J'ai chargé dans un fichier Excel via VB deux colonnes (A et B) .

    Lorsque je lance la macro, j'obtiens le résultat souhaité.

    Je souhaite faire un pourcentage dans une troisième colonne par rapport aux colonnes A et B.


    J'ai paramétré directement la formule dans le fichier excel est j'obtiens

    dans les cellules le message d'erreur suivant :"VALEUR!!"


    Question :

    -Est il possible après avoir lancer des macros d'enchainer par une fonction classique excel?

    -ou faut il passer obligatoirement par une nouvelle macro?


    Merci de votre aide

    olivier

  2. #2
    Membre émérite
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Par défaut
    Bonjour,

    Plusieurs possiblites:
    Soit tu remplace ta formule =A1/B1 par
    =IF(B1<>0;A1/B1;0) qui ne fera le calcul que si la cellule contient un chiffre different de 0 et puis apres tu etends avec la souris

    Soit tu integre le calcul dans ta macro:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    range("A" & i).value = valeur1
    Range("B" & i).value = valeur2
    if valeur1 <> 0 then Range("C" & i).value = valeur2 / valeur1
    Soit tu integre la copie de la formule dans ta macro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Range("C1").Formula = "=A1/B1 "
    Range("C1").Select
    Selection.AutoFill Destination:=Range("C1:C500"), Type:=xlFillValues
    A adapter a tes index et colonnes bien sur

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 153
    Par défaut
    merci pour l'aide :

    ma macro est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    Sub calculpourcentage()
     
    Dim valeur1 As Double
    Dim valeur2 As Double
    Dim i
     
     
    Range("I" & i).Value = valeur1
    Range("H" & i).Value = valeur2
    If valeur2 <> 0 Then Range("J" & i).Value = valeur2 / valeur1
     
    End Sub
    j'obtiens de le message d'erreur suivant :

    erreur d'execution "1004". la méthode 'Range' de l'objet global a échoué

    ai je oublié de faire quelquechose?

  4. #4
    Membre émérite
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Par défaut
    Oui, d'affecter une valeur a i (ton numero de ligne).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub calculpourcentage()
     
    Dim valeur1 As Double
    Dim valeur2 As Double
    Dim i as Integer
     
    for i = 1 to derniereligne 
    Range("I" & i).Value = valeur1
    Range("H" & i).Value = valeur2
    If valeur1 <> 0 Then Range("J" & i).Value = valeur2 / valeur1
    next i
     
    End Sub
    Reste a remplacer derniereligne par le numero de ta derniere ligne. Fait attention de faire le test "<> 0" sur la valeur qui se trouve au denominateur (j'ai corrige la)

    Tu peux aussi integrer le code dans ta macro d'importation si jamais tu utilises deja une boucle.

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 153
    Par défaut
    ca ne fonctionne pas

    cela met à blanc mes données chargées precédemment de la colonne I et et J


    Y a t il une antitode?

  6. #6
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 45
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub calculpourcentage()
     
    Dim valeur1 As Double
    Dim valeur2 As Double
    Dim i as Integer
     
    for i = 1 to derniereligne 
    valeur1 = Range("I" & i).Value 
    valeur2 = Range("H" & i).Value 
    If valeur1 <> 0 Then 
    Range("J" & i).Value = valeur2 / valeur1
    end if
    next i
     
    End Sub

    comme cela ca devrait marcher je pense

  7. #7
    Membre émérite
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Par défaut
    Oh la belle boulette

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de calcul pourcentage
    Par patgame dans le forum Modélisation
    Réponses: 9
    Dernier message: 26/07/2007, 18h25
  2. calcul pourcentage dans une requete imbriquée
    Par timal78 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 10/07/2007, 15h28
  3. Calcul pourcentage dans un sous formulaire
    Par kriskiller dans le forum Access
    Réponses: 9
    Dernier message: 11/07/2006, 10h45
  4. [Débutant] calculer pourcentages
    Par Satan dans le forum Access
    Réponses: 4
    Dernier message: 25/04/2006, 17h07
  5. update pour calcul pourcentage (SQL SERVER 2000)
    Par meufeu dans le forum Langage SQL
    Réponses: 3
    Dernier message: 13/09/2005, 10h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo