[access] exécuter application Excel

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. 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.
    1. 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.
      1. 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.