[VB]joindre une commande de mise en page EXCEL à une commande d'export

joindre une commande de mise en page EXCEL à une commande d'export [VB] - VB/VBA/VBS - Programmation

Marsh Posté le 25-08-2008 à 09:24:42    

Bonjour à tous,
 
Je rencontre un problème sous Access : à un bouton d'export ver EXCEL, je voudrais joindre une commande de mise en page de la page excel ainsi crée.
Pour cette opération, j'ai enregistré une macros sous EXCEL. je voudrais donc la joindre à la commande d'export pour redre cette opération automatique (et ainsi épargner aux personnes qui utiliseront le fichier Accesse de devoir se retaper la mise en page.
 
Pouvez vous m'aider, s'il vous plaît ?  
Voici la commande d'export :
 
 
Private Sub cmdExportXLS_Click()
 
'procédure d'export des données
 
        'penser à changer la dimension du tableau
        Dim tabrequete(1, 1) As String
        'Exporte le catalogue
        reponse = MsgBox("Etes-vous sûr de vouloir exporter les données catalogues vers Excel ?", vbYesNo + vbQuestion, "Exporter vers Excel" )
        If reponse = vbYes Then
            Dim xl As New Excel.Application
            'Rend visible l'appli EXCEL
            xl.Visible = True
            'Création d'un nouveau classeur EXCEL
            xl.Workbooks.Add
 
            'Stocke le nom des requêtes dans un tableau à une dimension
            tabrequete(0, 0) = "qry_frm_bromes4"
            tabrequete(0, 1) = "bromes"
             
            'Appelle la fonction qui va traiter l'export vers excel des requêtes
            Call ExportQRYVersXL(tabrequete(), xl)
                   
            End If
               
 
End Sub
 
 
et voici la macro de mise en page
 
Sub Formatbrome
 
' Formatbrome Macro : mise en page de la page Excel « Bromes »
 
    Rows("1:1" ).Select
    Selection.Insert Shift:=xlDown
    Rows("2:2" ).Select
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlBottom
        .WrapText = True
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
 
(... la macro entière fait plusieurs pages, j'en donne ici une version abrégée...)
 
    Selection.Borders(xlInsideVertical).LineStyle = xlNone
    Selection.Font.Bold = True
    ActiveCell.FormulaR1C1 = "Rendement"
    Range("AA12" ).Select
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Columns("E:E" ).EntireColumn.AutoFit
     
End Sub
 
 
 
Merci d'avance pour votre aide.
 
 
 
 

Reply

Marsh Posté le 25-08-2008 à 09:24:42   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed