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 :

Création macro avec plusieurs feuillets


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Octobre 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Octobre 2018
    Messages : 33
    Par défaut Création macro avec plusieurs feuillets
    Bonjour tout le monde !

    C'est mon premier message sur le forum et j'espère que vous serez indulgent avec moi je suis plus que débutant !

    Je voudrai créer un macro Excel avec plusieurs feuillets, je vais vous expliquer mon idée.

    J'ai un classeur avec un feuillet nommé "pointage" j'aimerai sur ce feuillet créer un macro qui me permettrai dans une suite qui me semble logique :

    1 : imprimer une zone spécifique du feuillet "pointage"
    2 : créer un nouveau feuillet ou il copiera (la taille des colonnes, le format etc mais pas les formules seulement les valeurs) une zone spécifique du feuillet "pointage" vers un nouveau feuillet qui sera nommé par une cellule. Par exemple B1 est 42 j'aimerai que le nouveau feuillet se nomme S42, si B1=43 alors S43 etc.
    3 : qu'il supprime une zone spécifique du feuillet "pointage"
    4 : que le document soit enregistrer.

    Tout cela avec un popup de confirmation "les infos entrée sont elles correctes" avant de lancer le macro.

    Voila le projet dans ma tête c'est ca, par quoi dois-je commencer car honnêtement j'ai tenter de pique des codes par-ci par-la mais je ne comprend vraiment pas grand et j'obtiens a chaque fois des erreurs...

    Je vous remercie de votre aide et de vos explications !!

  2. #2
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 733
    Par défaut
    Bonjour, vous avez peu de chances d'avoir des réponses à vos questions. Vous devriez lire les règles du forum en premier.
    http://club.developpez.com/regles/
    J'ai un peu l'impression que vous tentez de faire effectuer le travail par d'autres personnes et de vous contenter de tirer les marrons du feu?
    Par ailleurs, vos explications sont hyper light
    Exemple:
    1 : imprimer une zone spécifique du feuillet "pointage"
    Sans aucune spécification de la dite zone. Il n'existe que peu de voyant extralucide sur ce forum.

    Par exemple B1 est 42
    J'imagine que vous voulez dire que La cellule B1 a pour valeur 42?

    Et pour me faire pardonner ces paroles déplaisantes, je vais vous faire un petit cadeau, le code concernant l'enregistrement du classeur. Non ne me remerciez pas, ça me fait plaisir!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    ActiveWorkbook.Save
    End Sub
    Cordialement

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 176
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je ne peux qu'abonder dans le même sens que Transitoire que je salue au passage
    Je ne répond plus aux personnes qui posent 36 questions
    Ce sujet nécessitait l'ouverture de plusieurs discussions
    par exemple la première question
    1 : imprimer une zone spécifique du feuillet "pointage"
    Très sincèrement que la feuille se nomme "pointage" ou "toto" on s'en moque.
    Il suffirait de demander "Comment imprimer la plage spécifique d'une feuille". Ce que tu aurais pu découvrir par toi même en utilisant l'enregistreur de macro d'ailleurs.
    Voici ce qu'il donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Macro1()
    '
    ' Macro1 Macro
    '
        Range("A1:D16").Select
        ActiveSheet.PageSetup.PrintArea = "$A$1:$D$16"
    End Sub
    Ensuite évidemment, tu pourrais poser comme question. "Comment améliorer ce code afin que je puisse l'utiliser sur d'autres feuilles et d'autres plages sans devoir écrire plusieurs procédures".

    C'est là que ce forum t'apportera un plus
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Octobre 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Octobre 2018
    Messages : 33
    Par défaut
    Bonjour et merci de ta réponse !

    Non je n’essaye pas de faire écrire le code par les membres sinon j’aurai donné plus de précisions dans ma demande. Par exemple je pense que la sélection se fait par une range (mais encore une fois j’en suis pas sûr je suis novice...), et comme précisé c’est une idée pour l’instant.

    Il est vrai que mes questions sont implicites, désolé je vais donc être plus clair : tout d’abord la logique d’exécution de la macro est elle correcte ? Car quand j’ai attaché plusieurs bout de code, j’ai eut des problèmes au niveau de la liaison des feuillets vu que le macro le renomme

    Merci de ton aide !

  5. #5
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 733
    Par défaut
    Citation Envoyé par Oh so sick Voir le message
    Bonjour et merci de ta réponse !
    Non je n’essaye pas de faire écrire le code par les membres sinon j’aurai donné plus de précisions dans ma demande. Par exemple je pense que la sélection se fait par une range (mais encore une fois j’en suis pas sûr je suis novice...), et comme précisé c’est une idée pour l’instant.
    Merci de ton aide !
    Vous êtes très nombreux à avoir la même technique. vous ne répondez pas aux questions, vous vous contentez de redire indéfiniment les mêmes choses. Comme vous l'avez précisé, c'est juste une idée pour l'instant, du moins tant qu'on aura rien rajouté à votre place?

    Il est vrai que mes questions sont implicites, désolé je vais donc être plus clair : tout d’abord la logique d’exécution de la macro est elle correcte ? Car quand j’ai attaché plusieurs bout de code, j’ai eut des problèmes au niveau de la liaison des feuillets vu que le macro le renomme
    En quoi ce que vous dites est plus clair? De quelle macro parlez vous, moi je n'en voit pas sinon celle de Philippe Thulliez (que je salue ici) et mon bout de code?
    Je ne souhaite pas être désagréable, mais votre phrase ci-dessus, n'a ni queue ni tête.
    Si vous ne revenez pas à de meilleur sentiment ce sera sans moi....
    Lisez bien ce que vous a dit Philippe et appliquez donc ses conseils.
    Cordialement

  6. #6
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Octobre 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Octobre 2018
    Messages : 33
    Par défaut
    Bien sûr que c'est une idée pour l'instant car je ne sais pas coder et c'est pour ça que je viens chercher des conseils ici.

    Comme dit dans mes précédents messages j'aimerais effectuer cela avec le même bouton :
    1 : imprimer une zone spécifique du feuillet principal nommé "Pointage".
    2 : créer un nouveau feuillet où sera copié l'ensemble de la page sauf la zone réservée au bouton et à la cellule de modification des formules que j'ai déjà automatisée (d'où l'intérêt de copier une zone spécifique judicieuse ou pas ?) vers un nouveau feuillet qui sera nommé par une cellule du feuillet principal. Par exemple en B1 la valeur est 42 j'aimerais que le nouveau feuillet se nomme S42, si B1 à pour valeur 43 alors S43 etc. Cependant le collage doit être spécial et ne doit pas contenir les formules mais seulement les valeurs de celles-ci.
    3 : qu'il supprime une zone spécifique du feuillet "pointage" où est renseignée des valeurs chaque semaine.
    4 : Et enfin qu'il enregistre le document.

    J'ai très bien compris ce que dit Philippe cependant l'articulation de la macro (future ?) nécessite je pense (à tort ?) que les formules s'imbriquent correctement d'où l'intérêt d'une unique discussion. Car bien entendu j'ai essayé d'utiliser l'enregistreur de macro, indépendamment chaque actions fonctionnent à peu près (moins développées que je le voudrais) mais une fois qu'elles sont réunies il y a une multitude d'erreurs (que je n'arrive pas à corriger étant donné que je suis plus que novice.

    Ainsi j'arrive à ma première question pour effectuer un bon codage, l'enchainement des actions de la future macro vous semble-t-elle judicieuse pour écrire un code "logique" où faudrait-il d'après votre expérience intervertir certaines actions ?

    Voilà désolé si je ne vous ponds pas directement le code de la macro (ce n'est pas le but pour le moment), pour l'instant j'ouvre la discussion pour comprendre la logique du codage, car je sais qu'on ne place pas les actions d'une macro au hasard, il faut que celles-ci soient logiques pour obtenir un code propre et le plus simple possible.

    Merci à vous deux pour vos bouts de code pour le moment en tout cas.

Discussions similaires

  1. Macro avec plusieurs boucles
    Par m.hamdouch dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/05/2012, 11h31
  2. [XL-2003] Probléme de macro avec plusieurs validation
    Par mimil49 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/07/2011, 17h48
  3. [FPDF] Création documents avec plusieurs images
    Par EMiLY31 dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 01/08/2010, 19h58
  4. Macro avec plusieurs conditions pour ouverture formulaire
    Par Jacques-Henri dans le forum IHM
    Réponses: 2
    Dernier message: 05/08/2008, 22h44
  5. Création JPopupMenu avec plusieurs niveaux
    Par gpcanto dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 01/06/2006, 08h50

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