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 :

Traduction d'un script PHP en VBA ?


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut Traduction d'un script PHP en VBA ?
    Bonjour,

    J'essaye de traduire ce script PHP en VBA mais j'ai du mal.
    Pourriez vous m'aider ?

    Merci beaucouuuup !

    François


    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
    function affiche_chemin_fer($idpage) {
    $chemin_complet = "";
     
    if ($idpage != 0) {
    // on récupère les informations de la page en cours dans la DB
    $strSQL = 'SELECT `Titre`, `Id_parent` FROM `pages` WHERE `Id_page` = '.$idpage;
    $resultat = requete_SQL($strSQL);
    $tabl_result = mysql_fetch_array($resultat);
     
    $titrepage = $tabl_result['Titre'];
    $idparent = $tabl_result['Id_parent'];
     
    // création du lien vers la page en cours
    $chemin_page_en_cours = ' -> <a href="index.php?id_page='.$idpage.'">'.$titrepage.'</a>';
     
    // Concaténation du lien de la page N-1 et
    // du lien de la page en cours
    $chemin_complet = affiche_chemin_fer($idparent).$chemin_page_en_cours;
    }
    // renvoie le chemin complet
    return $chemin_complet;
    }

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    bonsoir,
    sur quel aspect de la traduction rencontres-tu des soucis ?

    qu'as-tu déjà "traduit" en VBA ici ?

    Le mode de fonctionnement n'est pas "faites à ma place", mais "aidez moi svp à faire"
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut Re
    Merci vraiment de me répondre.
    J'ai commencé par le début, à savoir "VBA Pour Les Nuls"...
    :-)

    J'ai commencé à écrire ça, je me penche d'abord sur la connexion à la base
    Est-ce que c'est bon déjà ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function cheminDeFer(ID As Integer)
    Dim ChnSQL As String
    Dim Req As QueryDef
     
    Set ChnSQL = "SELECT * FROM TABLE WHERE ID=" & ID
     
    Set Req = CurrentDb.CreateQueryDef("", ChnSQL)
    Req.Execute dbFailOnError
     
    End Function
    (Ce qui est difficile pour moi c'est la syntaxe qui est nouvelle, mais côté programmation j'ai des bonnes connaissances en C/C++)

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    ok
    pas nécessaire d'avoir un objet QueryDef, un simple recordset devrait faire l'affaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function cheminDeFer(ID As Integer)
    Dim ChnSQL As String
    Dim Req As QueryDef
     
    ChnSQL = "SELECT * FROM TABLE WHERE ID=" & ID
     
    Set Req = CurrentDb.OpenRecordset(chnsql)
     
     
    End Function
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut
    Merci pour ta réponse.

    Je pense être connecté à ma base et pouvoir récupérer le contenu de toute ma table.

    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
    Option Compare Database
     
    Function cheminDeFer(ID As Integer)
    Dim ChnSQL As String    ' variable contenant la requete SQL
    Dim DB As Database      ' variable contenant un pointeur vers la base de données
    Dim myRec As Recordset  ' variable contenant le retour de la requete
     
    Set DB = CurrentDb
    Set ChnSQL = "SELECT * FROM TABLE WHERE ID=" & ID
     
    Set myRec = DB.OpenRecordset(ChnSQL)
     
    With myRec
         If .AbsolutePosition = -1 Then
                 MsgBox "Pas d'enregistrement"
         Else
                 .MoveLast
                 MsgBox .RecordCount & " Enregistrement(s) Trouvé(s)"
         End If
    End With
     
     
     
     
    End Function
     
     
    Sub Macro1()
    cheminDeFer (10)
     
    End Sub
    Cependant quand je lance ma macro, il me surligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Function cheminDeFer(ID As Integer)
    et me dit "Erreur de compilation : Objet Requis".

    Tu as une idée de mon erreur ?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 15
    Par défaut Re
    J'ai trouvé pour mon erreur Objet Requis.
    C'est parce que je mettais Set variable = quelque chose alors que celle ci était déjà déclarée.

    Maintenant il y a juste la récupération des données de la base qui échoue, car il me dit "Erreur de syntaxe dans la clause FROM".
    Je vais essayer de trouver, n'hésitez pas si vous avez des suggestions ça m'aiderai bien.

  7. #7
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    salut,
    il faut nommer les champs et les tables correctement maintenant

    effectivement, pas besoin de set variable = valeur pour une chaine de caractères
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Optimisation de scripts PHP/MySQL
    Par DgG dans le forum PHP & Base de données
    Réponses: 368
    Dernier message: 20/11/2013, 18h59
  2. Quel est le meilleur script PHP de portail (CMS) ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 187
    Dernier message: 18/10/2012, 07h45
  3. Exécution script php
    Par devmat dans le forum Linux
    Réponses: 11
    Dernier message: 22/04/2007, 11h14
  4. Pb d'execution de requete avec un script php
    Par ythierrin dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2003, 14h34

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