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

VBA Access Discussion :

Liaison Excel SAP


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Consultant industrielle
    Inscrit en
    Avril 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2017
    Messages : 11
    Points : 5
    Points
    5
    Par défaut Liaison Excel SAP
    Bonjour,
    J'essai d'extraire des information de SAP pour alimenter ma base.
    J'ai réussi a extraire les information sur un fichier Excel temporaire mais je n'arrive pas à y accéder depuis Access.
    Le fichier sortant de SAP n'est pas enregistrer sur le PC et je n'ai pas d'autre façon de l'extraire.

    Je vous joins le code ou j'en suis. La variable i est en foncion une boucle. Je fait deux extractions.


    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
     session.findById("wnd[0]/tbar[0]/okcd").Text = "/nSQ00"
            session.findById("wnd[0]").sendVKey 0
            session.findById("wnd[0]/tbar[1]/btn[19]").press
            session.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").currentCellRow = 3
            session.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "3"
            session.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").doubleClickCurrentCell
            session.findById("wnd[0]/usr/cntlGRID_CONT0050/shellcont/shell").firstVisibleRow = 0
            session.findById("wnd[0]/usr/cntlGRID_CONT0050/shellcont/shell").selectedRows = "24"
            session.findById("wnd[0]/tbar[1]/btn[8]").press
     
            session.findById("wnd[0]/usr/ctxtWERKS-LOW").Text = "VAL"
            session.findById("wnd[0]/usr/btn%_SP$00019_%_APP_%-VALU_PUSH").press
            session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,0]").Text = "001"
            session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,1]").Text = "002"
            session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,2]").Text = "003"
            session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,3]").Text = "010"
            session.findById("wnd[1]/tbar[0]/btn[8]").press
            session.findById("wnd[0]/usr/txt%_SP$00003_%_APP_%-TEXT").caretPosition = 19
            session.findById("wnd[0]").sendVKey 2
            session.findById("wnd[1]/usr/cntlOPTION_CONTAINER/shellcont/shell").currentCellColumn = "TEXT"
            session.findById("wnd[1]/usr/cntlOPTION_CONTAINER/shellcont/shell").doubleClickCurrentCell
            session.findById("wnd[0]/usr/txt%_SP$00002_%_APP_%-TEXT").caretPosition = 26
            session.findById("wnd[0]").sendVKey 2
            session.findById("wnd[1]/usr/cntlOPTION_CONTAINER/shellcont/shell").currentCellColumn = "TEXT"
            session.findById("wnd[1]/usr/cntlOPTION_CONTAINER/shellcont/shell").doubleClickCurrentCell
            session.findById("wnd[0]/usr/btnPB%EXCO").press
            session.findById("wnd[0]/usr/rad%EXCEL").SetFocus
            session.findById("wnd[0]/usr/rad%EXCEL").Select
     
     
     
            If i = 0 Then
                session.findById("wnd[0]/usr/txtSP$00025-LOW").Text = "FERT"
            Else
                session.findById("wnd[0]/usr/txtSP$00025-LOW").Text = "HALB"
            End If
     
     
            session.findById("wnd[0]/tbar[1]/btn[8]").press
            session.findById("wnd[1]/tbar[0]/btn[0]").press
            session.findById("wnd[1]/tbar[0]/btn[0]").pres

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    On peut bien sûr exploiter un fichier XL (temporaire ou pas) venant de SAP, et l'enregistrer sur un répertoire accessible aux applications MS-Office.
    Je na sais pas de quelle version SAP vous disposez, mais même les plus anciennes versions avaient cette fonctionnalité.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Consultant industrielle
    Inscrit en
    Avril 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2017
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Je suis sur SAP GUI V730

    Est-ce que tu pourrait me proposer un morceau de code ?
    Je patauge un peut sur qu'elle commande utiliser

  4. #4
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    Ce n'est pas un problème de code, mais où se trouve donc ce fichier Excel temporaire dont vous parlez ? Vos collègues informaticiens (ou le HelpDesk SAP) peuvent le repérer. Il doit bien exister quelque part, et Access peut l'importer sans aucun problème.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Consultant industrielle
    Inscrit en
    Avril 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2017
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Il est créer par SAP lors d'une extraction. A ceux moment de la macro il n'est pas enregistré (Comme une nouveau classeur).


    J'ai peut-être une autre solution.
    Est-il possible de mettre dans une variable la mémoire tampon ?

  6. #6
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    Pouvez-vous instruire la macro pour quelle ouvre ce fameux fichier via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open Filename:=PathName & Filename
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Debug.print thisworkbook.Path
    L'idée est de mettre le doigt dessus.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Consultant industrielle
    Inscrit en
    Avril 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2017
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Je ne peux pas l'ouvrir comme il n'est pas encore créer.
    Quand il sort il est comme un nouveau classeur

Discussions similaires

  1. création d'un Bouton liaison excel
    Par schventdavid dans le forum Access
    Réponses: 6
    Dernier message: 27/02/2007, 14h21
  2. tri et liaisons excel vba
    Par alsimbad dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/11/2006, 05h52
  3. liaison Excel Access
    Par mat75019 dans le forum Access
    Réponses: 7
    Dernier message: 19/06/2006, 14h59
  4. Liaison Excel
    Par franckh99 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 28/02/2006, 11h08
  5. Mise à jour des liaisons Excel.
    Par franckh99 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 26/12/2005, 11h51

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