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 :

Pb somme variables


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 68
    Par défaut Pb somme variables
    Bonsoir,

    En fait, j'ai réalisé un code qui me permet de rechercher une valeur, saisie dans un combo, dans une feuille. Lorsque cette valeur est trouvée(A), il recherche une autre valeur sur la même ligne(B). Une fois cette valeur retrouvé(B), je souhaite ajouté la valeur d'un caption à cette valeur(B) pour me donner une nouvelle valeur(B') à mettre dans la cellule initiale de B.

    Mais le code ne fonctionne mal. En effet si dans la cellule il y a "3" et dans le caption "4" j'ai une valeur affichée de "34" au lieu de "7"...

    Quelqu'un a-t-il une solution..voici mon code...


    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Private Sub CommandButton1_Click()
     
    Dim nom As String
    Dim prod_a_entrer As String
    Dim stock_actuel As String
    Dim stock_actuel2 As Integer
     
    L = 2
    K = Worksheets("BasedeDonnees").Range("A65536").End(xlUp).Row
     
    If ComboBox1.Value <> "" And SpinButton1.Value <> 0 Then
        Sheets("basededonnees").Unprotect
        Worksheets("BasedeDonnees").Activate
        nom = ComboBox1.Value
     
        For L = 2 To K
            If Worksheets("BasedeDonnees").Cells(L, 3).Value = nom Then
                stock_actuel = Worksheets("BasedeDonnees").Cells(L, 10).Value
                prod_a_entrer = Label7.Caption
                stock_actuel2 = stock_actuel + prod_a_entrer
                Worksheets("BasedeDonnees").Cells(L, 10).Value = stock_actuel2
                MsgBox (" Vous avez rentré " & prod_a_entrer & " article(s) " & nom & " dans le stock")
                Unload Entreearticle
                MenuGeneral.Show
                End If
          Next
          Sheets("basededonnees").Protect
          End If
    End Sub
    Merci

    Ac

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Les 2 variables prod_a_entrer et stock_actuel sont déclarées de type string.
    Il est donc normal que tu obtiennes : "3" + "4" = "34"
    Tu dois convertir ces données en numérique.

    Par exemple, remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim stock_actuel2 As Double
    stock_actuel2 = CDbl(stock_actuel) + CDbl(prod_a_entrer)
    Cordialement.

Discussions similaires

  1. Somme variables avec condition
    Par develap dans le forum SAS Base
    Réponses: 3
    Dernier message: 19/01/2012, 12h56
  2. [V6] PB sur somme / variable groupée
    Par blackhole dans le forum Deski
    Réponses: 4
    Dernier message: 12/02/2010, 11h23
  3. [iReport] Calcul de somme de variables et fusion de données
    Par RR instinct dans le forum iReport
    Réponses: 7
    Dernier message: 03/04/2006, 16h04
  4. somme de variables de type date
    Par tounsi dans le forum Oracle
    Réponses: 28
    Dernier message: 12/01/2006, 15h42

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