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éer une macro pour automatisé les entêtes


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    autres
    Inscrit en
    Août 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 52
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : autres

    Informations forums :
    Inscription : Août 2016
    Messages : 1
    Par défaut Créer une macro pour automatisé les entêtes
    Bonjour,

    Après différentes recherches, je n'ai pas trouvé ce que je voulais.

    J'arrive à créer une entête avec la macro automatique mais il y a énormément de lignes et je ne sais pas lesquelles supprimées.

    Quelqu'un pourrait-il m'aider ?

    Merci beaucoup

    En résumé

    - à gauche : je veux en format 8 : Requête
    - au centre : en gras format 11 : Contrôle interne Supervision VDUREE MOIS
    - à droite : je veux en format 8 : Requête du VDATEJOUR
    VINIT

    Je joins mon fichier en format vb
    Fichiers attachés Fichiers attachés

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

    - Lorsque plusieurs séquences de mise en page sont enchaînées, il ne faut garder que la dernière. Dans votre cas, les deux premières sont à supprimer.
    - Si vous n'avez pas encore modifié la mise en page, la macro créée avec l'enregistreur donne les valeurs par défaut de votre mise en page. En créant une deuxième macro modifiant votre mise en page, vous conservez les lignes qui ont changé et vous pouvez supprimer les autres, mais vous n'êtes pas obligée, ce sera plus facile pour la maintenance le cas échéant.

    A vérifier si le code ci-dessous fonctionne correctement sur votre micro. Il y a sans doute d'autres lignes non obligatoires.

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    Sub MEPage_IG()
     
    Dim MOIS As String
    Dim VDUREE As String
    Dim VDATEJOUR As Date
    Dim VINIT As String
     
    'Définition de boite de messages
    MOIS = InputBox("Entrer le mois et l'année : Exemple : si requête lancée en mai noter avril 2016")
    VDUREE = InputBox("définir la durée : 10 ou 18 mois")
    VDATEJOUR = InputBox("Entrer la date du jour au format JJ/MM/AAAA", "Date du jour", Date)
    VINIT = InputBox("Entrer vos initiales")
     
    ' A supprimer
    'MOIS = "avril 2016"
    'VDUREE = "18"
    'VDATEJOUR = Date
    'VINIT = "EK"
     
        'Application.PrintCommunication = False ' Si cette ligne est activée, vérifier que les initiales dans VINIT sont toutes présentes.
        With ActiveSheet.PageSetup
     
            .LeftHeader = "&8Requête" & Chr(10) & """IJ_" & VDUREE & "mois_Ctrl_Interne.sql"""
            .CenterHeader = "&""-,Gras""&11CONTROLE INTERNE" & Chr(10) & "SUPERVISION " & VDUREE & " MOIS" & Chr(10) & UCase(MOIS)
            .RightHeader = "&8Requête du " & VDATEJOUR & Chr(10) & VINIT
     
            .Orientation = xlLandscape
            .Draft = False
            .PaperSize = xlPaperA4
            .FirstPageNumber = xlAutomatic
            .Order = xlDownThenOver
            .FitToPagesWide = 1
            .FitToPagesTall = False
     
            .PrintErrors = xlPrintErrorsDisplayed
            .ScaleWithDocHeaderFooter = True
            .AlignMarginsHeaderFooter = True
     
        End With
        'Application.PrintCommunication = True  ' Si cette ligne est activée, vérifier que les initiales dans VINIT sont toutes présentes à l'édition.
     
     
    End Sub
    Nb : La quantité d'inputbox à saisir est particulièrement irritante. Vous devriez créer un userform pour n'avoir qu'un seul masque à saisir ou bien créer une zone de saisie sur un onglet.

    Cordialement.

Discussions similaires

  1. Réponses: 2
    Dernier message: 09/06/2015, 09h35
  2. Créer une macro pour éxécuter les règles
    Par belilan dans le forum VBA Outlook
    Réponses: 0
    Dernier message: 05/01/2014, 14h45
  3. Créer une macro pour vérifier des prix
    Par lolonico dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/04/2009, 10h54
  4. Réponses: 8
    Dernier message: 09/01/2007, 16h30
  5. Réponses: 4
    Dernier message: 20/08/2006, 16h20

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