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 :

Ecrire dans une cellule [XL-2003]


Sujet :

Macros et VBA Excel

  1. #21
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Peux tu me donner les valeurs transmises pour faire un test
    Jérôme

  2. #22
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 178
    Points : 80
    Points
    80
    Par défaut
    Dans l'ordre:

    "Phase 1"
    1500000
    1300000
    3
    3
    7
    5
    15
    0,03

  3. #23
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Je crois que le problème provient de la valeur de phase.
    Le if respectant la casse, si tu envoies phase 1 il sera different que Phase 1

    essai ce code en remplacement des if

    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
     
        Select Case UCase(Phase)
            Case "PHASE 1"
                Count = 3
                Colonne = 2
            Case "PHASE 2"
                Count = DureeP1 + 4
                Colonne = 2
            Case "PHASE 3"
                Count = DureeP2 + DureeP1 + 4
                Colonne = 2
            Case "MGLOBALE"
                Count = 3
                Colonne = 9
        End Select
    j'ai par la meme occasion replacé le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("XXX").Cells(Count, Colonne) = Total1 * Actualisation
    dans la fonction
    Jérôme

  4. #24
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 178
    Points : 80
    Points
    80
    Par défaut Hélas...
    Je viens d'essayer avec la fonction CASE, mais ça ne fonctionne pas.

    D'après les messages box que je reçois, le code arrête de fonctionner à partir de la ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("XXX").Cells(Count, Colonne) = Total1 * Actualisation

  5. #25
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je ne dis pas que le problème vient de là mais à priori j'éviterais d'utiliser "Count" comme une variable alors que c'est un mot clé.

  6. #26
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 178
    Points : 80
    Points
    80
    Par défaut
    Bonjour et merci pour votre intérêt,

    Je viens de remplacer Count par Ligne mais le problème reste toujours là: les calculs ne se font pas au-delà de la ligne pré-citée. J'enrage...

  7. #27
    Invité
    Invité(e)
    Par défaut
    Encore une question pour essayer de bien comprendre étant donné que l'on ne dispose que d'une partie de votre code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Actualisation = Actualisation * (1 + Taux_Act)
    je ne vois pas où une valeur est affectée à "Taux_Act"

  8. #28
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 178
    Points : 80
    Points
    80
    Par défaut
    Taux_Act est une des variables d'entrée, le dernier de la liste. C'est un Double.

  9. #29
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 178
    Points : 80
    Points
    80
    Par défaut
    Je tiens à remercier particulièrement jacques_jean et jfontaine pour leur aide qui m'a permis de résoudre mon problème.

    Le fin mot de l'histoire est qu'il apparaît impossible, à mon niveau de connaissance de vba, d'écrire des résultats dans des cellules à partir d'une fonction. Il faut impérativement passer par une procédure classique pour remplir un Worksheet.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Ecrire dans une cellule depuis une autre?
    Par noel45 dans le forum Excel
    Réponses: 5
    Dernier message: 10/01/2008, 16h00
  2. Ecrire dans une cellule excel
    Par baloote dans le forum C#
    Réponses: 10
    Dernier message: 08/01/2008, 14h23
  3. Ecrire dans une cellule en VBA
    Par ade94 dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/07/2007, 17h15
  4. [VBA-E] Ecrire dans une cellule sans écraser son contenu
    Par skystef dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/02/2007, 15h43
  5. Réponses: 4
    Dernier message: 15/04/2005, 15h25

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