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 :

Paramétrer l'encodage UTF 8 par défaut lors des exports


Sujet :

Access

  1. #1
    Invité
    Invité(e)
    Par défaut Paramétrer l'encodage UTF 8 par défaut lors des exports
    Bonjour à tous,

    Malgré mes recherches je n'ai pas trouvé la solution.

    Lorsque je fais des exports de requêtes au format texte (en général csv) je souhaite que par défaut l'export se fasse en encodage UTF-8.

    On peut le sélectionner en utilisant les options avancés de la fenêtre d'export, mais je souhaite que par défaut que ce soit cet encodage.

    Attention, je ne veux pas enregistrer de filtre d'export car les structures de requête sont différentes.

    Merci

    Philippe

  2. #2
    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
    salut,
    je souhaite que par défaut l'export se fasse en encodage UTF-8.
    par défaut, je ne vois pas comment mais le dernier paramètre de TransferText est Codepage et le code 65001 correspond à "utf8"
    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 ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut,

    En effet, je connais cela, mais ce sont des exports manuelles et non par programmation.

    Philippe

  4. #4
    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
    je n'ai peut-être pas bien compris ton souci, qu'est-ce que c'est un export manuel ?
    en VBA cela fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acExportDelim, , "Table1", "D:\Export.csv", True, , 65001
    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 ?

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re

    Export manuel, c'est simple, je crée une requête, puis exporter au format texte.

    Pourquoi, parce que dans mon métier tout n'est pas automatisable, et régulièrement on exploite manuellement des données dont on veut conserver les accents, et des caractères spéciaux, d'où l'UTF -8.

    Ce fichier texte (en fait un csv) sert pour une autre application.

    Voilà.

    Philippe

  6. #6
    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
    OK, tu souhaites exporter manuellement, j'avais compris le contraire ...
    Du coup, c'est compliqué avec ce genre de paramètre par défaut inaccessible.
    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 ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Re

    J'avais pensé à la base de registre, mais je n'ai pas trouvé d'information concluante.

    Le but est de faciliter les choses pour éviter d'oublier de sélectionner UTF-8 comme encodage.

    Philippe

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 113
    Points : 124
    Points
    124
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Re

    J'avais pensé à la base de registre, mais je n'ai pas trouvé d'information concluante.

    Le but est de faciliter les choses pour éviter d'oublier de sélectionner UTF-8 comme encodage.

    Philippe
    Bonjour Philippe,

    Il me semble qu'il est possible de mémoriser un format d'export que tu fais manuellement. Tu lui donnes un nom genre "SPECUTF8" et ensuite tu peux l'appeler de manière semi-automatique via une procédure dans laquelle tu passes en paramètre le nom de la requête que tu as créée :

    la procédure devrait ressembler à cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    Sub ExtractUTF(str as string, sFile as string)
     
    ' str => Nom de ta requête
    ' sFile => Chemin et nom du fichier texte à créer
     
    DoCmd.TransferText acExportDelim, "SPECUTF8", str, sFile, True
     
    end sub
    Avec génération auto du nom de fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Sub ExtractUTF(str as string)
     
    ' str => Nom de ta requête
     
    dim sFile as string 
     
    sFile = Environ("USERPROFILE") & "\Desktop\" & str & ".txt" ' Je créé le fichier texte sur mon bureau en lui donnant le nom de la requête
     
    DoCmd.TransferText acExportDelim, "SPECUTF8", str, sFile, True
     
    end sub
    Bien à vous

    el

  9. #9
    Invité
    Invité(e)
    Par défaut
    Salut

    Tout cela je le sais, j'ai bien dit un export manuel et non par programmation.

    Philippe

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 113
    Points : 124
    Points
    124
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Salut

    Tout cela je le sais, j'ai bien dit un export manuel et non par programmation.

    Philippe
    Philippe,

    Oui j'avais bien noté ce point

    Mon idée était la suivante, tout d'abord créer un formulaire bidon qui ne contient qu'un bouton, au clic sur le bouton une inputbox demande le nom de la requête à extraire, une fois validé, exécution du code ci-dessus :

    Ensuite, dès que tu fais une nouvelle requête (potentiellement toujours différente), tu l'enregistres et tu lance le formulaire.

    Deuxième solution, à partir du menu External Data (Ma version d'access est en anglais, désolé) tu peux utiliser manuellement les spec sauvegardées via le menu Saved Exports mais cela implique que ta requête porte toujours le même nom, bref à chaque fois que tu crées une requête tu l'enregistre avec le nom que tu as utilisé lors de la création de la spec et tu écrases donc le contenu de la requête précédente (ce qui n'est pas forcément pratique si tu souhaites les conserver pour un usage ultérieur).

    J'espère que ceci aidera...

    PS: pour l'hypothèse 1, on peut imaginer un menu déroulant (plutôt qu'un bouton et une inputbox) qui t'affiche la liste de toutes les requêtes de ta bdd, plus qu'à selectionner celle qui t'intéresse pour lancer l'export UTF8

    Bon courage.
    el

  11. #11
    Invité
    Invité(e)
    Par défaut
    Re

    Merci de tous ces efforts, mais ce n'est pas ce que je souhaite.

    Une partie de mon travail me fait utiliser Access de manière disons "non conventionnel", uniquement pour stocker des données et faire une requête sur le pouce (en 2 seconde), et clique droit exporter en CSV.

    Ce que je veux c'est uniquement avoir pour défaut UTF-8 en export sans rien faire d'autres.

    Les autres solutions je les connais et je les appliques déjà dans d'autres base, mais ce n'est pas ce que je veux.

    Merci quand même de tes solutions qui pourront servir à d'autres.

    Philippe

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 113
    Points : 124
    Points
    124
    Par défaut
    Sinon voici aussi une ressource web avec modification de la base des registres... L'exemple est pour Excel donc il va falloir adapter. Malheureusement c'est bloqué chez moi et je ne peux pas tester...

    http://www.lukemiller.org/journal/20...rt-origin.html

  13. #13
    Invité
    Invité(e)
    Par défaut
    Re

    Cela ne fonctionne pas sur Access, je l'ai testé ce matin.

    Philippe

Discussions similaires

  1. Encodage ISO-8859-1/UTF-8 par défaut
    Par mirabelle54 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 24/09/2012, 15h09
  2. Encodage UTF-8 par défaut
    Par nicolas_isi dans le forum Maven
    Réponses: 2
    Dernier message: 09/08/2010, 14h49
  3. Paramètres par défaut lors de l'ouverture de Word
    Par steps5ive dans le forum Word
    Réponses: 2
    Dernier message: 02/02/2009, 16h09
  4. Réponses: 2
    Dernier message: 05/11/2007, 14h23

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