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

Macros et VBA Excel Discussion :

Pb de format avec le collage de dates issues d'un fichier texte [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Par défaut Pb de format avec le collage de dates issues d'un fichier texte
    Bonjour,

    J'ai un fichier dans lequel j'importe diverses données issues d'un fichier texte ouvert avec la méthode ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    MsgBox "Dans la boîte de dialogue suivante" & vbCrLf & vbCrLf _
        & "veuillez choisir le fichier à traiter.", vbOKOnly + vbInformation, "Choix du fichier"
    Fichier = Application.GetOpenFilename(, , , , False)
    If TypeName(Fichier) = "Boolean" Then Exit Sub
    Workbooks.OpenText Fichier, Origin:=xlWindows, StartRow:=1, DataType:=xlFixedWidth, _
        FieldInfo:=Array(Array(0, 4), Array(10, 2), Array(15, 2), Array(31, 2), Array(38, 2), _
        Array(41, 2), Array(54, 1), Array(62, 1), Array(70, 1), Array(77, 1), Array(84, 1), Array(92, 1)), _
        Local:=True, DecimalSeparator:=".", TrailingMinusNumbers:=True
    Je fais ensuite un petit traitement pour ne garder que les données utiles, après quoi je les copie dans le presse-papier et ferme le fichier qui ne m'est plus d'aucune utilité de la façon suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Range("A1").CurrentRegion.Copy
    Application.DisplayAlerts = False
    ActiveWorkbook.Close False
    Application.DisplayAlerts = True
    C'est après que ça se gâte, je n'arrive pas à conserver le format de mes dates avec le collage de mes données en vba malgré de nombreux essais.
    Au mieux c'est le format américain qui est collé, au pire j'ai un message d'erreur.
    J'ai essayé d'enregistrer mon collage avec l'enregistreur de macro mais après le code créé par excel génère une erreur d'exécution si je l'exécute à partir de mon module.

    Si a ce stade je fais un clic droit dans ma première cellule de destination excel me propose uniquement le collage texte mais le résultat est nickel.

    Toutes vos idées seront les bienvenues.

    Cordialement

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonjour
    pourrait on avoir quelque lignes du ou des fichier texte suffisante pour faire les test
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Par défaut
    Bonjour,

    Ci-joint le fichier excel avec la macro, un fichier txt ainsi que la copie écran du menu collage que je peux faire hors macro.
    En bref, à la fin de la macro je fais mon clic droit en B2, je colle "texte uniquement" et j'ai le bon résultat.
    Mon souhait : réussir à faire ce collage par macro de façon à poursuivre mon traitement.

    Bonne journée
    Fichiers attachés Fichiers attachés

  4. #4
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Ton fichier xlsm signale un contenu illisible à l'ouverture.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Par défaut
    Bonjour,

    C'est bizarre, je l'ai fait ce matin au bureau et là sur mon pc à la maison il s'ouvre bien.
    Je le renvoie tout seul sans le compresser puisqu'il est tout petit.

    Cdlt.
    Fichiers attachés Fichiers attachés

  6. #6
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Ton problème vient du fait que le classeur d'où proviennent les données copiées a été fermé avant l'exécution de la commande Paste.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Range("B2").CurrentRegion.Copy
     
    Application.DisplayAlerts = False
    ActiveWorkbook.Close False: Message = "Classeur fermé"
    Application.DisplayAlerts = True
     
    Range("b2").Select
    ActiveSheet.Paste

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 05/11/2015, 17h11
  2. Réponses: 12
    Dernier message: 13/07/2011, 08h35
  3. Formater avec String.Format un nombre ou une date
    Par bubulemaster dans le forum Débuter
    Réponses: 2
    Dernier message: 29/06/2008, 19h00
  4. [MySQL] récupérer une date formatée avec MySql
    Par stolx_10 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 08/06/2007, 10h57
  5. [MySQL] le format idéal pour stocker des dates avec l'heure
    Par Philoulheinz dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/02/2007, 21h53

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