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

Requêtes et SQL. Discussion :

Exportation automatique champs -> fichiers html ?


Sujet :

Requêtes et SQL.

  1. #41
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    le plus difficile c'est que ça marche parfaitement chez moi!

    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
     
     
    Sub test()
    Dim Path As String, rs As Object
    Path = Replace(CurrentDb.Name, Split(CurrentDb.Name, "\")(UBound(Split(CurrentDb.Name, "\"))), "")
    Set rs = CurrentDb.OpenRecordset("Select [Standards].[Pseudo],[Standards].[Standard_HTM] from [Standards]")
     While Not rs.EOF
           CreerFichierTxt Path & "fichiers_html\" & rs("Pseudo").Value & ".HTML", rs("Standard_HTM").Value
            rs.MoveNext
        Wend
        rs.Close
    End Sub
    Private Sub CreerFichierTxt(Fichier As String, txt As String)
    Dim fso, NewFichier
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set NewFichier = fso.OpenTextFile(Fichier, 2, True)
    NewFichier.Write txt
    NewFichier.Close
    Set NewFichier = Nothing
    Set fso = Nothing
    End Sub

  2. #42
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Cette fois ci le message d'erreur est

    erreur d'execution 94
    utilisation incorrecte de Null

    Et quand je debeugue, c'est la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CreerFichierTxt Path & "fichiers_html\" & rs("pseudo").Value & ".HTML", rs("standard_htm").Value
    qui est selectionné

  3. #43
    Invité
    Invité(e)
    Par défaut
    la valeur de rs("standard_htm").Value doit être null!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CreerFichierTxt Path & "fichiers_html\" & rs("pseudo").Value & ".HTML","" & rs("standard_htm").Value

  4. #44
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Mais c'est justement le champs (Standards.standard_htm) qui contient le code html de la page à exporter. Comment devrait elle être vide ?
    Et encore, je n'ai mis que 2 enregistrements pour le test !

  5. #45
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    J'ai quand même remplacé la ligne en question. Ca a l'air de fonctionner sauf que, maintenant, il y a une erreur 52 Nom ou numero de fichier incorrect

    Cette fois ci c'est cette ligne qui est selectionné par le debogueur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set NewFichier = fso.OpenTextFile(Fichier, 2, True)

  6. #46
    Invité
    Invité(e)
    Par défaut
    J'essai sans doute inconsciemment a te rejeter la faute de ma stupéfaction car le code fonctionne chez moi!

  7. #47
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Je ne sais pas quoi dire. Si tu ne sais pas d'où ça peut venir, je ne le saurai pas non plus.

    Je mets le code tel que tu me l'as donné dans le module, en remplaçant les majuscules là où il faut ... et je fais play ...
    Les noms, de ce que je comprends de leurs emplacements dans le code, concordent (les champs, le dossier ...)

  8. #48
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour Youssou06 et dysorthographie,
    si cela fonctionne chez l'un et pas chez l'autre, cela peut être dû à un problème de références ou de données.
    Yousso06, tu n'as pas précisé avec quelle version d'Access tu codes.
    je mets le code tel que tu me l'as donné dans le module, en remplaçant les majuscules là où il faut
    Arrête de t'embêter à remplacer les majuscules cela ne sert à rien, Windows n'est pas "case sensitive" (sauf pour les mots de passe).
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  9. #49
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Ah bon, je peux vraiment mettre une casse differente pour les champs et les tables !

    Probleme de reference et de données ...
    Cela ne pourrait donc venir que du nom des tables et des champs ... ?

    Pourtant c'est pas très compliqué ... Tout se passe dans la table Standards, dont on n'utilise que 2champs ... standard_htm qui contient l'integrale du code , pour chaque enregistrement, d'une future page web, et pseudo qui contient le nom (pseudo.html) de cette page
    Enfin, il y a un dossier fichiers_html (que j'ai bien créé au même endroit) dans lequel doivent aller les fichiers créés... D'ailleurs, à ce jour, il n'y en a que deux, qui servent de test. Les 2000 autres enregistrements sont vides sur le champs qui contient le code

    A noter enfin que l'erreur du dernier code donné par dysorthographie concerne la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set NewFichier = fso.OpenTextFile(Fichier, 2, True)
    dans laquelle il n'y a pas d'ambiguité de nom ...

  10. #50
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    Ah bon, je peux vraiment mettre une casse differente pour les champs et les tables !
    dysorthographie te l'a déjà dit (post #34)

    Probleme de reference et de données ...
    Cela ne pourrait donc venir que du nom des tables et des champs ... ?
    Pour les références il s'agit de celles utilisées dans les modules VBA ( menu Outils) cela peut dépendre de ta version d'Access (que l'on ne connait toujours pas), si elle est ancienne, il faut peut être ajouter la référence Microsoft Scripting Runtime, mais c'est juste une supposition.

    Pour les données il ne s'agit pas du nom des champs mais de leur contenu, par exemple, la variable Fichier (champ Pseudo de Standards) peut, soit contenir des caractères interdits par la règle de nommage des fichiers (\ / : * ? " <> |), soit être vide.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  11. #51
    Invité
    Invité(e)
    Par défaut
    CreateObject("Scripting.FileSystemObject") permet de créer une instance de Scripting.FileSystemObject sens pour autant avoir besoin de bricoler les références.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    J'utilise la méthode CreerFichierTxt
    depuis plus de quinze ans elle fait partie d'un module de classe que j'ai même publié sur developpez.com.

    De plus pour une application du boulot, j'ai implémenté une application basé sur l'éditeur html implémenté par PatrickToulon (wisiwig) afin d'en sauvegarder le script dans ma base de données.

    Je ne vois d'autant pas de raisons! Alors que j'ai testé toute les versions que je tes envoyé!
    Dernière modification par -Nikopol- ; 02/11/2017 à 22h51.

  12. #52
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Oups désolé, j'ai oublié de dire (ou de redire) que je suis sur 2007.

    Bon, apparemment, ça ne change pas grand chose, si ?

    Mon champs pseudo contient des _ mais, sinon, que des lettres et des chiffres

    Le champs standard_htm, en "mode" memo, contient tout ce qu'une page web contient ..

    Evidemment, j'ignore encore + que vous quelles sont les raisons de l'echec. Je ne fais qu'indiquer ce que Access m'indique.
    Y aurait il de ma part quelque chose que je n'ai pas fait lors, par exemple, de la creation du module ?

    Merci de votre aide ...

  13. #53
    Invité
    Invité(e)
    Par défaut
    Si c'est possible sens dévoiler des informations confidentiels poste un échantillon de ta base de données.

  14. #54
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Je ne peux pas te l'envoyer par mail ? ... que tu me donnerais en mp ?

  15. #55
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    CA maaarche .... à moitié !

    Sur les 2670 standards, il n'y a eut que 1377 fichiers html ! Toutes les lettres semblent être presentes. Je veux dire, il ne s'est pâs arrété à une lettre précise... Je ne comprends pas du tout quel crietere a pu arrêter l'exportation.
    Il semblerait donc qu'il y aie un probléme au 1378 eme enregistrement ? Quel genre ? j'ai regardé le champs pseudo (à priori c'est le seul sollicité où il pourrait y avoir des carcateres interdits) mais je ne vois pas d'anomalie

    Je ne peux malheureusement pas lier la base, elle est trop grosse (159 mo)

    Je pourrais eventuellement l'envoyer à quelqu'un par un site qui echange des gros fichiers ...

    EDIT
    Je viens de realiser que le champs pseudo a des doublons.
    Malheureusement, j'ai fait un essai sur une copie de la base sans ces doublons, ça ne change rien. Il manque toujours + de 1000 fichiers

    EDIT 2 Bien sur, j'ai toujours l'erreur 52, nom ou numero incorrect, signalé , avec, en debogage, l'expression Set NewFichier = fso.OpenTextFile(Fichier, 2, True) selectionnée. Et cela, une fois les 1377 fichiers créés. Il semble que cette erreur indique l'empêchement de la creation des fichiers restants

  16. #56
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Serait il possible d'ajouter la condition d'exporter le fichier que si le champs standard_htm n'est PAS Null ?

    Ca ne reglera pas totalement le probleme mais ça me permettrait d'isoler les enregistrements exportés de ceux qui ne veulent pas l'être

  17. #57
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    "" & rs("standard_htm").Value cette forme d'écriture remplace le null par un caractère vide ""! Ca ne pose pas de problème puisque ton fichier existera mais ne contiendra rien!

    En revanche, comme te l'a dit tee_grandbois le nom du fichier est important un "\" dans le nom indiquera un sous répertoires! Pas de "" & null pour le nom du fichier!

  18. #58
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    J'ai trouvé. Il restait des ? et des !
    J'ai reussi à les supprimer (du champs pseudo, donc, celui qui sert aux noms des fichiers)
    Tout fonctionne. j'ai même créé une requête pour n'afficher que les enregistrements où la valeur n'est pas Null pour le champs qui contient le html ... je l'ai mise à la place de la table Standrads dans le code de dysorthographie et c'est tout super !!

    Le probléme est donc résolu.

    Merci messieurs, et surtout dysorthographie, de votre patience. Excusez moi d'avoir été si laborieux

  19. #59
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function Remplacer(Text As String) As String
    Dim T As Variant,  i As Integer: T = Array("/", "\", ":", "*", "!", "?", Chr(34), "<", ">", "|")
    Remplacer = Text
    For i = 0 To UBound(T)
        Remplacer = Replace(Remplacer, T(i), "_")
    Next
    End Function
    Sub test()
    Debug.Print Remplacer("A!B?C\D/F")
    End Sub

  20. #60
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2017
    Messages : 91
    Points : 16
    Points
    16
    Par défaut
    Apparemment j'ai édité sans voir ton message
    En l'occurrence je note ici que j'avais un probléme pour rechercher les ? . je l'ai resolu en trouvant dans un autre sujet qu'il fallait, dasn la recherche, mettre les caracteres speciaux (cad qui fonctionnent pour d'autres valeurs qu'elles mêmes ... je me comprend) entre []

    Mais dysorthographie propose du coup un script pour trouver tous els caracteres speciaux d'un coup

    Merci dysorthographie, une fois de plus.

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 4 PremièrePremière 1234 DernièreDernière

Discussions similaires

  1. Upload automatique d'un fichier html
    Par Darkness63 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/12/2016, 00h34
  2. Export automatique champs table Excel
    Par brody dans le forum WinDev
    Réponses: 1
    Dernier message: 11/07/2016, 14h05
  3. [AC-2007] Export de champs vides - Fichier XML
    Par Fouko92 dans le forum Access
    Réponses: 1
    Dernier message: 24/09/2014, 13h42
  4. création automatique de fichier html
    Par oclone dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 03/02/2006, 14h53
  5. [RegEx] Récupérer le champ mail d'un fichier html (suite)
    Par nico93100 dans le forum Langage
    Réponses: 2
    Dernier message: 06/01/2006, 16h24

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