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

Access Discussion :

ouverture d'un formulaire access par un fichier html


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 84
    Points : 63
    Points
    63
    Par défaut ouverture d'un formulaire access par un fichier html
    Bonjour, le but de ma venue ici est de savoir si c'est possible d'ouvrir un formulaire preci d'une base de données access en passant par une interface html.
    J'ai deja réussi a ouvrir la base de données en question mai je n'arrive pas a ouvrir une macro (qui ouvre sur un formulaire) qui s'appel "essai" ou bun formulaire précis genre "Frm_gestion".
    En farfouillant un peu j'ai découvert que l'on pouvait importer des script vb dans une page html chose que j'ai faite et ensuite rappeler la fonction dans un href....
    Mai sla çe ne marche pas...
    Quelqu'un pourrait-il m'aider svp...

    Voici la fonction vb
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    Private Declare Function apiSetForegroundWindow Lib "user32" _
                Alias "SetForegroundWindow" _
                (ByVal hwnd As Long) _
                As Long
     
    Private Declare Function apiShowWindow Lib "user32" _
                Alias "ShowWindow" _
                (ByVal hwnd As Long, _
                ByVal nCmdShow As Long) _
                As Long
     
    Private Const SW_MAXIMIZE = 3
    Private Const SW_NORMAL = 1
     
    Function fOpenRemoteForm(strMDB As String, _
                                            strForm As String, _
                                            Optional intView As Variant) _
                                            As Boolean
    Dim objAccess As Access.Application
    Dim lngRet As Long
     
        On Error GoTo fOpenRemoteForm_Err
     
        If IsMissing(intView) Then intView = acViewNormal
     
        If Len(Dir(strMDB)) > 0 Then
            Set objAccess = New Access.Application
            With objAccess
                lngRet = apiSetForegroundWindow(.hWndAccessApp)
                lngRet = apiShowWindow(.hWndAccessApp, SW_MAXIMIZE)
                'le premier appel à  ShowWindow semble rester sans effet
                lngRet = apiShowWindow(.hWndAccessApp, SW_MAXIMIZE)
                .OpenCurrentDatabase strMDB
                .DoCmd.OpenForm strForm, intView
                Do While Len(.CurrentDb.Name) > 0
                    DoEvents
                Loop
            End With
        End If
    fOpenRemoteForm_Exit:
        On Error Resume Next
        objAccess.Quit
        Set objAccess = Nothing
        Exit Function
    fOpenRemoteForm_Err:
        fOpenRemoteForm = False
        Select Case err.Number
            Case 7866:
                ' MDB ouverte en mode exclusif
                MsgBox "The database you specified " & vbCrLf & strMDB & _
                    vbCrLf & "is currently open in exclusive mode.  " & vbCrLf _
                    & vbCrLf & "Please reopen in shared mode and try again", _
                    vbExclamation + vbOKOnly, "Could not open database."
            Case 2102:
                ' Ce formulaire n'existe pas
                MsgBox "The Form \'" & strForm & _
                            "\' doesn\'t exist in the Database " _
                            & vbCrLf & strMDB, _
                            vbExclamation + vbOKOnly, "Form not found"
            Case 7952:
                ' L'utilisateur a fermé la base de données
                fOpenRemoteForm = True
            Case Else:
                MsgBox "Error#: " & err.Number & vbCrLf & err.DESCRIPTION, _
                        vbCritical + vbOKOnly, "Runtime error"
        End Select
        Resume fOpenRemoteForm_Exit
    End Function
    et voici ma page html

    Code html : 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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
     
    <!doctype html>
    <html lang="fr">
    <head>
      <meta charset="utf-8">
      <title>Poeppelman Acceuil</title>
      <link rel="stylesheet" href="style.css">
    <script language="javascript">
    <!--
      function Access() {
         var wScript = new ActiveXObject("Wscript.Shell" );
         wScript.run("file:///V:/DB/BASE%20DE%20DONNEES%20EI/Projet%20Ei.accdb");
    	return false;
      }
    //-->
      sfHover = function() {
            var sfEls = document.getElementById("menu").getElementsByTagName("LI");
            for (var i=0; i<sfEls.length; i++) {
                    sfEls[i].onmouseover=function() {
                            this.className+=" sfhover";
                    }
                    sfEls[i].onmouseout=function() {
                            this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
                    }
            }
    }
    if (window.attachEvent) window.attachEvent("onload", sfHover);
    </script>
    <script type="vbscript">
     
    Function fOpenRemoteForm("file:///V:/DB/BASE%20DE%20DONNEES%20EI/Projet%20Ei.accdb","Frm_Gestion")
     
    	End Function
    </script>
     
    </head>
    <body>
     
     
    <div id="entete">
    <img src="img/PP-logo.jpg" alt="" class="logo">
     
    </div> 
     
    <ul id="menu">
     
            <li>
                    <a href="index.html">accueil</a>
            </li>
     
            <li>
                    <a href="#">Bases de données</a>
                    <ul>
                            <!--<li><a href="#"onClick="return Access();">Rapports d'injections</a></li>//-->
                            <li><a href="vbscript:fOpenRemoteForm()">Rapports d'injections</a></li>
    						<li><a href="#">inscription</a></li>
                    </ul>
            </li>
     
            <li>
                    <a href="#"onClick="return lancertruc();"style="color:white">Bases de données</a>
                    <ul>
                            <li>
                                    <a href="#">photos</a>
                                    <ul>
                                            <li><a href="#">catégorie 1</a></li>
                                            <li><a href="#">catégorie 2</a></li>
                                    </ul>
     
                            </li>
                            <li>
                                    <a href="#">vidéos</a>
                            </li>
                    </ul>
            </li>
     
            <li>
                    <a href="#">téléchargements</a>
                    <ul>
                            <li><a href="#">vidéos</a></li>
                            <li><a href="#">musiques</a></li>
                    </ul>
            </li>
     
            <li>
                    <a href="#">plus</a>
                    <ul>
                            <li><a href="#">forum</a></li>
                            <li><a href="#">liens</a></li>
                            <li><a href="#">nous contacter</a></li>
                            <li><a href="#">team</a></li>
                            <li><a href="#">recherche</a></li>
                    </ul>
            </li>
     
    </ul>
    </body>
    </html>

    La fonction "Access" m'ouvre la bdd mais je n'arrive pas plus loin.... Et si quelqu'un ouquelqu'une a plus simple je suis preneur.....
    HELP!!!!

  2. #2
    Membre régulier Avatar de zoopsys
    Homme Profil pro
    Inscrit en
    Août 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 68
    Points : 80
    Points
    80
    Par défaut
    bonjour,

    Peut-etre un truc du genre : Start /WAIT msaccess.exe "C:\temp\bd1.mdb" /x Macro1

    http://jpcheck.developpez.com/tutori...ge-parametres/

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 84
    Points : 63
    Points
    63
    Par défaut toujours en quête de solution
    j'ai déjà regarder ce tuto malheureusement ms access est sur un serveur citrix je ne peux donc pas rentrer la commande avec la macro.
    par contre cette fonction javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      function Access() {
         var wScript = new ActiveXObject("Wscript.Shell" );
         wScript.run("file:///V:/DB/BASE%20DE%20DONNEES%20EI/Projet%20Ei.accdb");
    	return false;
      }
    et le lien :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <li><a href="#"onclick="return Access();">Rapports d'injections</a></li>
    fonctionnent et m'ouvre bien access.... J'aimerais seulement ouvrir un formulaire précis......
    hhheeelllppp!!!!!

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    Et est-ce que tu ouvres ton fichier Access par d'autres biais ?
    Parce que je me dis, pourquoi ne pas prévoir l'ouverture du formulaire en question lors de l'ouverture de ta base de données ou avec un macro AutoExec ?

    Ce ne sont que des propositions .

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 84
    Points : 63
    Points
    63
    Par défaut Ce n'est assez précis
    Merci pour ton aide mais cette solution ne convient pas parceque les bdd couvrent plusieurs champs d'activité et je voudrais qu'un employé d'un secteur accede directement à un formulaire spécifique.
    Si je fait cette méthode il n'y aura qu'un seul formulaire qui s'ouvrira donc pour moi qu'un seul lien sur mon interface.....

    Cordialement

  6. #6
    Membre actif
    Homme Profil pro
    Manager de Projet SAP
    Inscrit en
    Mars 2009
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Pologne

    Informations professionnelles :
    Activité : Manager de Projet SAP
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2009
    Messages : 210
    Points : 238
    Points
    238
    Par défaut
    Bonjour.

    Et un formulaire qui s'ouvre a l'ouverture du fichier Access (ou une macro aut_exec) qui est en charge d'ouvrir le formulaire qui va bien en fonction d'une valeur dans une table ?

    Cdlt.
    Jean

Discussions similaires

  1. Réponses: 9
    Dernier message: 10/10/2008, 12h29
  2. Réponses: 2
    Dernier message: 03/10/2008, 11h01
  3. Réponses: 22
    Dernier message: 23/11/2006, 23h42
  4. [VB] Ouverture d'une base Access par le code
    Par jouf dans le forum Access
    Réponses: 4
    Dernier message: 15/06/2006, 17h54
  5. VBA ACCESS générer un fichier HTML
    Par sylvie.forum dans le forum Access
    Réponses: 3
    Dernier message: 01/01/2006, 14h30

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