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 :

j'ai besoin de votre aide pour écrire une macro.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    iuc
    Inscrit en
    Mars 2016
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : iuc
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 77
    Par défaut j'ai besoin de votre aide pour écrire une macro.
    Bonjour à tous ,

    Je suis débutant en vba j'ai vraiment besoin de votre aide pour écrire un macro.

    J'ai créer sur excel le tableau dont j'ai joint l'image à ce message .

    je souhaite récupérer le mois actuelle. en suite affecter au différent cellule du tableau de jan jusqu’à déc les valeurs de 1 à 12 sans toute fois modifier les valeurs qui s'affiche sur le tableau.

    Pour cela j'ai écris (je sais pas si c'est correcte) :
    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
     
    Dim Mois As Byte
     
    Mois = Month
     
    Sheets("Feuille2 ").Range("A2")= 1
    Sheets("Feuille2 ").Range("B2")= 2
    Sheets("Feuille2 ").Range("C2")= 3
    Sheets("Feuille2 ").Range("D2")= 4
    Sheets("Feuille2 ").Range("E2")= 5
    Sheets("Feuille2 ").Range("F2")= 6
    Sheets("Feuille2 ").Range("G2")= 7
    Sheets("Feuille2 ").Range("H2")= 8
    Sheets("Feuille2 ").Range("I2")= 9
    Sheets("Feuille2 ").Range("J2")= 10
    Sheets("Feuille2 ").Range("K2")= 11
    Sheets("Feuille2 ").Range("L2")= 12
    En suite j'aimerai chercher et trouver la cellule qui correspond au mois actuel en fonction des valeurs que j'ai affecté .
    Quand j'ai trouvé la cellule qui correspond , par exemple si c'est 5 qui est mai :

    pour chaque ligne de A3:L3 à A9:L9 je somme les valeurs des cellule de mai à dec et je met cette somme respectivement dans la cellule Reste de chaque ligne.

    Nb: considérer que les cellules qui sont grise contiennes des valeurs je les ai masqué avec la mise en forme conditionné .

    Merci d'avance Nom : tab.PNG
Affichages : 269
Taille : 10,8 Ko

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,
    Citation Envoyé par fochive Voir le message
    Je suis débutant en vba j'ai vraiment besoin de votre aide pour écrire un macro.
    Je ne sais pas si c'est un exercice pour débuter le vba mais pour faire ton calcul tu n'as pas besoin de macro, avec des formules l'on fait cela sans souci.

    Il faut utiliser vba pour des fonctions répétitives non prévues en excel mais sinon il est préférable d'utiliser les fonctions natives du tableur.

    Pour réaliser la fonction que tu as codée tu peux la simplifier ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        With Sheets("Feuille2 ").Range("A2")
            .Value = 1
            .DataSeries Rowcol:=xlRows, Type:=xlLinear, Date:=xlDay, Step:=1, Stop:=12, Trend:=False
        End With

  3. #3
    Membre confirmé
    Homme Profil pro
    iuc
    Inscrit en
    Mars 2016
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : iuc
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 77
    Par défaut
    Merci pour votre réponse mais je ne comprend pas la fonction que vous me proposé para port à mon besoin.

  4. #4
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,
    Citation Envoyé par fochive Voir le message
    je somme les valeurs des cellule de mai à dec et je met cette somme respectivement dans la cellule Reste de chaque ligne
    La fonction que je t'avais mise remplaçait le code que tu avais écrit et maintenant je te rajoute ta somme avec une formule Excel et cela devrait réaliser ta demande.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        With Sheets("Feuille2 ")
            With .Range("A2")
                .Value = 1
                .DataSeries Rowcol:=xlRows, Type:=xlLinear, Date:=xlDay, Step:=1, Stop:=12, Trend:=False
            End With
            .Range("O3:O9").FormulaR1C1 = "=SUM(OFFSET(RC1,0,MATCH(MONTH(TODAY()),R2C[-14]:R2C[-3],0)-1,1,13-MATCH(MONTH(TODAY()),R2C[-14]:R2C[-3],0)))"
        End With
    à toi d'essayer le fonctionnement

  5. #5
    Membre confirmé
    Homme Profil pro
    iuc
    Inscrit en
    Mars 2016
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : iuc
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 77
    Par défaut
    Merci beaucoup pour votre aide mais je ne comprend pas la ligne 6.
    pouvez vous m'expliquer s'il vous plait ??


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      With Sheets("Feuille2 ").Range("A2")
            .Value = 1
            .DataSeries Rowcol:=xlRows, Type:=xlLinear, Date:=xlDay, Step:=1, Stop:=12, Trend:=False
        End With
    Dans ce code vous à s affecter à A2 les valeurs de 1 à 12 or moi je cherche à affecter seule à A2 la valeur 1 ensuite à B2 la valeur 2 jusqu'a L2 ou je vais affecter 12.

    En suite je récupérer le mois actuelle. en suite affecter au différent cellule du tableau de jan jusqu’à déc les valeurs de 1 à 12 sans toute fois modifier les valeurs qui s'affiche sur le tableau.

    En suite j'aimerai chercher et trouver la cellule qui correspond au mois actuel en fonction des valeurs que j'ai affecté .
    Quand j'ai trouvé la cellule qui correspond , par exemple si c'est 5 qui est mai :

    pour chaque ligne de A3:L3 à A9:L9 je somme les valeurs des cellule de mai à dec et je met cette somme respectivement dans la cellule Reste de chaque ligne.

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonsoir,
    Citation Envoyé par fochive Voir le message
    or moi je cherche à affecter seule à A2 la valeur 1 ensuite à B2 la valeur 2
    Quel est ton intérêt de faire cellule par cellule alors qu'une fonction fait l'ensemble ???

    pour chaque ligne de A3:L3 à A9:L9 je somme les valeurs des cellule de mai à dec et je met cette somme respectivement dans la cellule Reste de chaque ligne.
    C'est exactement ce que fait la ligne 6 que tu ne comprends pas en fonction du mois en cours.

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

Discussions similaires

  1. Réponses: 24
    Dernier message: 13/05/2014, 14h47
  2. Besoin de votre aide pour choisir une offre wifi
    Par quaresma dans le forum Hardware
    Réponses: 1
    Dernier message: 19/08/2010, 11h37
  3. J'ai besoin de votre aide pour une requête
    Par ovdz dans le forum Langage SQL
    Réponses: 6
    Dernier message: 20/05/2005, 11h42

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