[access] exécuter application Excel

rodrigue62 Messages postés 201 Statut Membre -  
GUYSYS Messages postés 27 Statut Membre -
Bonjour,
j'ai réalisé une macro dans laquelle j'aimerai entre autre ouvrir un fichier excel particulier, j'ai donc utilisé la commande ExécuterApplication et j'ai entré en ligne de commande le chemin d'acces a ce fichier Excel. Mais ca ne fonctionne pas, et je pense en fait que c'est parceque cette commande sert à ouvrir Excel et qu'en ligne de commande je devrait juste indiquer le nom du chemin du exe d'excel. Alors comment faire pour ouvrir mon .XLS?
merci d'avance

3 réponses

  1. zenon Messages postés 729 Statut Membre 180
     
    Salut,

    En VB, avec la commande Shell, il suffit de faire suivre le path de l'application par le path du fichier:

    X= Shell ("c:\...exe C:\...XLS",1)

    Probablement que ça fonctionnerait aussi avec une macro.
    0
  2. rodrigue62 Messages postés 201 Statut Membre 30
     
    En passant par module j'ai ensuite ecrit ce code:

    Sub ouv_recap()
    'declaration de nom de fichier
    NomFichier = "recap bilan.xls"
    'ouverture du fichier Excel
    Set AppExcel = CreateObject("Excel.Application")
    AppExcel.Workbooks.Open ("C:\Documents and Settings\sap\Mes documents\rodrigue\" & NomFichier)
    ' rendre visible la fenetre
    AppExcel.Visible = True

    On Error Resume Next
    AppExcel.UserControl = True
    AppExcel.Close
    End Sub

    et sa marche, ca m'ouvre bien mon fichier excel, mais le probleme c'est qu'ensuite je n'arrive pas a faire appel à ce code dans ma macro.
    0
  3. GUYSYS Messages postés 27 Statut Membre 11
     
    Salut,

    Dans ton module : remplace Sub par Function et End Sub par End Function.

    code pour ta macro

    '------------------------------------------------------------
    ' Macro2
    '
    '------------------------------------------------------------
    Function Macro2()
    On Error GoTo Macro2_Err
    
        ouv_recap
    
    
    Macro2_Exit:
        Exit Function
    
    Macro2_Err:
        MsgBox Error$
        Resume Macro2_Exit
    
    End Function
    


    Ou utilise l'assistant macro en choisissant dans la colonne action
    ExécuterCode et dans Nom fonction
    ouv_recap()


    En affectant, cette macro à un bouton cela fonctionne nickel.
    0