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 :

incrémenter une valeur d'un autre classeur [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut incrémenter une valeur d'un autre classeur
    Bonjour à tous.

    Je me présente, Nightwhisper, grand débutant en Vb (grand car vraiment mauvais)

    J'ai eu, la brillante idée de faire une macro Excel pour me faciliter la vie, mais cela est loin d'être le cas.

    Mon problème :

    Je veux, incrémenter une valeur qui ce situe dans un autre classeur. Bon jusqu'a là rien de bien difficile (enfin mon programme ne fonctionne pas quand même)
    A chaque incrémentation, je voudrais rappatrier la nouvelle valeur dans un tableau de mon classeur sur lequel je travaille.

    La valeur que je tente d'incrémenter est sur le classeur Tm24FYC323-516.xls et elle est nommée Ltb.
    Je travaille sur le classeur Teszt.xls

    Voici ce que j'ai fait, qui ne fonctionne pas car il doit être bourré d'erreurs:

    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
    sub macro3()
     Dim ltb As Double
        Dim i As Integer
     
        ltb = Worksheets("Tm24FYC323-516.xls!Ltb")
        Range("B3").Select
        ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
        For ltb = 0.01 To ltb = 0.4
        ltb = ltb + 0.01
            For i = 4 To i = 43
            Range(i, 2).Select
            ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
        Next ltb
     
     
    End Sub
    Bon je ne sais pas si j'ai été très clair. En tout cas tout éclairement est le bienvenu.

    Version excel 2003 Sp3
    Version VB 6.3

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour Nightwhisper, re le forum,
    si on décortique ton code, rien que cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ltb = Worksheets("Tm24FYC323-516.xls!Ltb")
    tu dis que Tm24FYC323-516.xls est un classeur donc déjà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ltb = Workbooks("Tm24FYC323-516.xls").worksheets("nomdetafeuille").range(....
    à savoir si ltb est défini comme nom de cellule dans cette feuille, le reste comporte des erreurs mais allons-y pas à pas

    a +
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Merci déjà pour la réponse,
    j'ai donc modifié la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ltb = Worksheets("Tm24FYC323-516.xls!Ltb")
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ltb = Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16")
    en lancant le programme, il ne bloque plus sur cette ligne.

    Par contre, dans le classeur sur lequel je travaille, ltb n'est pas défini, je tente justement d'attribuer uniquement dans le code une valeur à ltb égale à celle définie dans le classeur Tm24.

    Je suis clair?

    Une idée comme ca, qui me semble pas bête pour aller modifier le Ltb du classeur Tm24

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    For ltb = 0.01 To ltb = 0.4
        ltb = ltb + 0.01
    Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16") =ltb
            For i = 4 To i = 43
            Range(4, i).Select
            ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
        Next ltb

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    dans ce cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ltb = Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16") 'il faut que ce classeur soit ouvert
    si la macro est dans le classeur "test", (vérifies l'ortographe)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    thisworkbook.sheets("nomdelafeuilleactive").activecell = ltb
    mais il faut continuer les corrections pour le reste du code avec les boucles, ceci n'est qu'un exemple
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Rien que cette ligne n'a pas une bonne syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For ltb = 0.01 To ltb = 0.4
    je peux corriger ton code si tu me dis quelles sont les cellules à incrémenter
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Le classeur Tm 24 est ouvert.
    La macro etait dans le classeur teszt (j'avais bien nommé ainsi suite à une faute de frappe)
    Il est maintenant devenu le classeur test pour plus de facilité.
    La cellule a incrémenter est la cellule G16 du classeur Tm24. Elle est nommée Ltb.
    Je souhaite rassembler ensuite toutes les données de cette cellule dans mon classeur test sous forme de tableau.
    D'où la tentative de décalage de ligne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For i = 4 To i = 43
            Range(4, i).Select
            ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
    Merci encore pour ces réponses plus que rapides et claires

    La dernière version modifiée en essayant de suivre tes instructions.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim ltb As Double
        Dim i As Integer
     
        ltb = Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16")
        Range("B3").Select
        ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
        For ltb = 0.01 To 0.4
        ltb = ltb + 0.01
        Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16") = ltb
            For i = 4 To 43
            Range(4, i).Select
            ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
        Next ltb

  7. #7
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    j'ai du mal à comprendre ton car :
    ici on la valeur de G16 à ltb qui devient une variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ltb = Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("B3").Select 'eviter les select
    ici tu donne à b3 la valeur de la cellule nommée ltb dans tm24

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("B3")..FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
    ici tu change la valeur de la variable ltb (tu l'initialise à 0.01) dans une boucle qui ira jusque 0.4
    mais ici, cette variable prend déjà 0.01 en plus (illogique)
    ici dans tm24 tu change la valeur de g16 en donnant la valeur 0.02
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16") = ltb
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For i = 4 To 43
            Range(4, i).Select' la une erreur et eviter les select donc
            cells(i,4).FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
    en résumé incompréhension totale
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Je vais tenter d'être plus clair.

    En gros l'idée de mon programme, qui est probablement mal retranscrite au travers de mon code est la suivante:

    Le classeur Tm 24 est en réalité une feuille de calcul. A une valeur de Ltb, j'ai un résultat de coefficent d'échange et de perte de charges (je ne les avais pas évoqué pensant que cela compliquerait les choses.)

    Ce que je veux faire c'est, pour chaque nouvelle valeur de Ltb, rappatrier les résultats de coef d'échange et de perte de charge dans un tableau de mon classeur test.
    J'avais donc décidé d'incrémenter la valeur de Ltb de 0.01 jusqu'à 0.4 avec un pas de 0.01.

    Ceci est donc bien une erreur, je veux débuter à 0.01, la ligne ltb+0.01 est donc de trop

    ici tu change la valeur de la variable ltb (tu l'initialise à 0.01) dans une boucle qui ira jusque 0.4

    Code :
    For ltb = 0.01 To 0.4mais ici, cette variable prend déjà 0.01 en plus (illogique)

    Code :
    ltb = ltb + 0.01
    Si je reprends mon programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim ltb As Double
        Dim i As Integer
     
        ltb = Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16")'je tente ici que ltb prenne la valeur de la cellule G16 du classeur Tm24
     
        Range("B3").Select     ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb" 'servait uniquement pour la création du tableau, donc peut être supprimé
        For ltb = 0.01 To 0.4 step 0.01
        ltb = ltb + 0.01 'inutile si on met le step
        Workbooks("Tm24FYC323-516.xls").Worksheets("tm24").Range("G16") = ltb 'je tente de réinjecter la nouvelle valeur de ltb soit 0.02 après une incrémentation dans la classeur Tm24
            For i = 4 To 43
            Range(4, i).Select
            ActiveCell.FormulaR1C1 = "='Tm24FYC323-516.xls'!Ltb"
            Next i
        Next ltb
    Voilà c'est plus clair??

  9. #9
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Si tu es patient, je vais essayer de faire quelque chose car je crois avoir compris, la vie oblige, je suis aussi occupé ailleurs
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Je suis patient et te remercie grandement de ton aide. De toute manière étant bloqué, tes conseils me permettrons toujours d'aller plus loin plus vite que ce que je n'ai été jusqu'a là capable de faire.

    Information complémentaire, les données à réccupérer, respectivement le coeff d'échange et la perte de charge sont dans le classeur Tm24 sur la feuille tm24 cellules: G43 et G44

  11. #11
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Avant d'avoir vu ton dernier message, j'avais une proposition que tu pourras adapter, reviens me dire si tu tiens à des formules, essayes ce code et adaptes le en fonction des cellules où tu veux le résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub macro3()
    Dim varltb As Double, i As Integer, x As Double 'ici j'ai changé le nom de la variable ltb pour éviter les confusions avec la cellule nommée
    With Workbooks("Tm24FYC323-516.xls")
    varltb = .Worksheets("tm24").Range("G16") 'je tente ici que ltb prenne la valeur de la cellule G16 du classeur Tm24
     
    x = 0.01
            For i = 4 To 43
            ThisWorkbook.Sheets("feuil1").Cells(i, 4) = varltb + x 'es-tu sur d'avoir besoin d'une formule ?
            x = x + 0.01
            If x = 0.4 Then Exit Sub
            Next i
    End With
    End Sub
    j'espère avoir compris ta demande et n'hésites pas si tu veux qu'on améliore
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    C'est parfait. J'ai légèrement modifié le code pour qu'il implémente la valeur de Ltb dans le classeur Tm24 ainsi que la valeur initiale de x. Je vais tenter autrechose et je post le code dès que c'est fait. En tout cas super l'aide, ca marche nikel.

    le code actuel modifié:
    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
    Sub macro3()
    '
     
     
    Dim varltb As Double, i As Integer, x As Double 'ici j'ai changé le nom de la variable ltb pour éviter les confusions avec la cellule nommée
    With Workbooks("Tm24FYC323-516.xls")
    varltb = .Worksheets("tm24").Range("G16") 'je tente ici que ltb prenne la valeur de la cellule G16 du classeur Tm24
     
    x = 0#
            For i = 4 To 43
            ThisWorkbook.Sheets("feuil1").Cells(i, 4) = varltb + x 'es-tu sur d'avoir besoin d'une formule ?
            x = x + 0.01
            .Worksheets("tm24").Range("G16") = x
            If x = 0.39 Then Exit Sub
            Next i
    End With
     
     
    End Sub

  13. #13
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Comme je t'ai dit, je vais etre parti cet après-midi, donc je ne pourais pas répondre avant ce soir

    Bonne journée et content qu'on avance
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  14. #14
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    C'est pas grave, on a tous une vie à côté. Moi je ne pourrais pas regarder ce weekend donc chacun son timing ^^.
    Bon, dernier soucis et normalement apres c'est tout bon.
    Le nouveau code est le suivant:

    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
    Dim varltb As Double, i As Integer, x As Double, Hreel As Long, DPtot As Long 
    With Workbooks("Tm24FYC323-516.xls")
    varltb = .Worksheets("tm24").Range("G16") 
    Hreel = .Worksheets("tm24").Range("G43")
    DPtot = .Worksheets("tm24").Range("G44")
     
    x = 0#
            For i = 4 To 43
            ThisWorkbook.Sheets("feuil1").Cells(i, 4) = varltb + x 'es-tu sur d'avoir besoin d'une formule ?
            x = x + 0.01
            .Worksheets("tm24").Range("G16") = x
            ThisWorkbook.Sheets("feuil1").Cells(i, 5) = Hreel
            ThisWorkbook.Sheets("feuil1").Cells(i, 6) = DPtot
     
            If x = 0.39 Then Exit Sub
            Next i
    End With
     
     
    End Sub
    Cela marche, mais il me rappatri systématiquement le Hreel et DPtot du Ltb=0.01 et pas la suite.
    Je sais que cela est dû au fait que je déclare Hreel et DPtot en début de programme, mais si je le fait au milieu de la boucle for comme ceci, la boucle ne fonctionne plus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     For i = 4 To 43
            ThisWorkbook.Sheets("feuil1").Cells(i, 4) = varltb + x 'es-tu sur d'avoir besoin d'une formule ?
            x = x + 0.01
            .Worksheets("tm24").Range("G16") = x
                    With Workbooks("Tm24FYC323-516.xls")
                        Hreel = .Worksheets("tm24").Range("G43")
                        DPtot = .Worksheets("tm24").Range("G44")
            ThisWorkbook.Sheets("feuil1").Cells(i, 5) = Hreel
            ThisWorkbook.Sheets("feuil1").Cells(i, 6) = DPtot
     
            If x = 0.39 Then Exit Sub
            Next i

  15. #15
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    C'est bon, j'ai trouvé la solution.

    Pour ceux que cela interesserai :
    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
    Sub macro3()
    '
    Dim varltb As Double, i As Integer, x As Double, Hreel As Long, DPtot As Long 'ici j'ai changé le nom de la variable ltb pour éviter les confusions avec la cellule nommée
    With Workbooks("Tm24FYC323-516.xls")
    varltb = .Worksheets("tm24").Range("G16") 'je tente ici que ltb prenne la valeur de la cellule G16 du classeur Tm24
     
     
    x = 0#
            For i = 4 To 43
            ThisWorkbook.Sheets("feuil1").Cells(i, 4) = varltb + x 'es-tu sur d'avoir besoin d'une formule ?
            x = x + 0.01
            .Worksheets("tm24").Range("G16") = x
                        Hreel = .Worksheets("tm24").Range("G43")
                        DPtot = .Worksheets("tm24").Range("G44")
            ThisWorkbook.Sheets("feuil1").Cells(i, 5) = Hreel
            ThisWorkbook.Sheets("feuil1").Cells(i, 6) = DPtot
     
            If x = 0.39 Then Exit Sub
            Next i
    End With
     
     
    End Sub
    Un grand merci à toi casefayere, grâce à tes conseils, j'ai plus avancé sur le programme que depuis une semaine ^^

  16. #16
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    j'en suis ravi car comme je l'ai dit, je n'ai pas été disponible,

    Bon weed-end

    edit : je supprimerai ce message
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

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

Discussions similaires

  1. Rechercher une valeur dans un autre classeur
    Par nanoo79 dans le forum Excel
    Réponses: 2
    Dernier message: 19/12/2013, 17h02
  2. [XL-2007] Entrée la valeur d'une cellule d'un autre classeur dans une variable
    Par Coco_O dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/05/2011, 16h25
  3. Réponses: 3
    Dernier message: 05/03/2009, 03h44
  4. Réponses: 5
    Dernier message: 06/04/2007, 14h05
  5. Réponses: 2
    Dernier message: 23/07/2006, 22h11

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