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 :

Macro Excel création de colonne avec formules


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2016
    Messages : 4
    Par défaut
    Bonjour à tous,

    C'est suite à de nombreuses lectures dans votre forum que j'ai pu faire beaucoup de petites macros par ci par là pour aider à optimiser mon travail depuis un moment. Cependant, je suis arrivé à un point où je n'arrive plus à m'en sortir seul avec des bouts de codes... C'est pourquoi je vous écris, en espérant que quelqu'un arrive à m'aider à débloquer cette situation.

    Je vous explique cela :

    Dans un fichier excel qui a un format d'environ A1 et qui descend jusque A342, je cherche à créer un bouton qui, lorsque l'on va cliquer dessus, va génerer automatiquement 12 colonnes (qui représenteront donc les mois) qui va s'insérer en plein milieu de la feuille, dans un tableau. La plus grosse difficulté réside dans le fait que j'aimerais qu'il y ait dans ces colonnes des formules, en l'occurrence des rechercheV.

    Mon raisonnement a été celui ci :
    j'ai le tableau de 2015 avec les 12 mois qui tient sur la plage suivante :" AR1:BC342 " et en plus le tableau continue avec des colonnes comme "moyenne", "total" etc. Donc le bouton permet de copier cette plage de cellules et le recopie autre part. Cet autre part, je n'ai pas réussi à le définir, du coup j'ai créer un inputbox qui demande à l'utilisateur une cellule de départ et donc on donnerait le départ à "BD1", donc décalerait les autres colonnes.

    Mes gros soucis, j'arrive à copier le tableau et à le coller, cependant cela ne décale pas le tableau mais l'écrase... le second soucis c'est au niveau des formules, cela me met exactement le même tableau, ce qui est logique au final, mais du coup ce qui changerait au niveau de la rechercheV c'est le troisième critère (exemple : recherchev(A1;A1:E4:4;Faux))
    En fait, la rechercheV pointe sur une autre feuille qui est articulé de la même manière : les 12 mois en colonne de 2015, puis les 12 de 2016 etc donc la solution serait de pouvoir incrémenter ce critère 3 de 1 à chaque colonne...

    Bon je vous avouerais que c'est vachement compliqué.... je ne sais pas si j'ai été vraiment clair. Je peux vous donner des détails en plus si besoin est.

    En vous remerciant grandement d'avance pour votre aide !

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Bonjour,

    En utilisant l'enregistreur de macro, tu devrais te retrouver avec un bout de code que tu pourras modifier à ta guise.

    Pour ce qui est de l'action, sélectionne tes colonnes, Copie, tu te positionnes où tu veux coller et tu fais "Insérer les cellules copiées"
    Ça aura comme conséquence de déplacer les colonnes de droites existantes vers la droite.

    Pour ce qui est des formules, tu devras déterminer le nombre de lignes à remplir et tu inscris ta formule d'un coup
    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(2, Colonne), Cells(nbLignes, Colonne).Formula = "=..."
    Par exemple, tu as une RechercheV en C2 que tu veux copier en F avec le 3e paramètre incrémenté de 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        Dim Colonne As Long, nbLignes As Long
        Dim Formule As String
        Dim Tablo
     
        nbLignes = Cells(Rows.Count, "A").End(xlUp).Row
        Colonne = 6                     'Colonne où on veut copier la nouvelle formule
        Formule = Cells(2, 3).Formula   'formule originale en C2
        Tablo = Split(Formule, ",")     'tableau des parties de la formule
        Tablo(2) = Tablo(2) + 1         'Change le 3e paramètre
        Range(Cells(2, Colonne), Cells(nbLignes, Colonne)).Formula = "" & Tablo(0) & "," & Tablo(1) & "," & Tablo(2) & "," & Tablo(3)
    Il reste à ajuster selon ton cas...

  3. #3
    Membre à l'essai
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2016
    Messages : 4
    Par défaut
    Bonjour parmi,

    C'est énorme votre travail, je vous remercie déjà pour votre temps. Je vais essayer de suite vos scripts, je vous tiens au courant le plus vite possible !

    Merci encore !

Discussions similaires

  1. Table croisée : ajout de colonnes avec formules
    Par jlravenel dans le forum Formules
    Réponses: 2
    Dernier message: 21/01/2009, 13h58
  2. [Macro Excel] Fonction qui calcule une formule dans une cellule
    Par Enthau dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/07/2008, 16h31
  3. Macro Excel indice de colonne
    Par pierrOPSG dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/12/2006, 13h41
  4. [Excel] Filtre de colonne avec la valeur d'une cellule
    Par repié dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/04/2006, 14h58
  5. [Excel VB] Insertion ligne avec formules
    Par ptitsoleil87 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/12/2005, 16h21

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