Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 08/02/2010, 12h22   #1
Invité régulier
 
Inscription : janvier 2010
Messages : 43
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : janvier 2010
Messages : 43
Points : 7
Points : 7
Par défaut Fonction "open" erreur en ouverture (type de fichier)

Bonjour,

Suite à la réalisation d'un petit code VB j'ai un petit soucis, je vous expose mon problème :

Objectif :
Automatiser l'importation de données à partir d'un fichier .wri (gestion de stock) dans un tableau Excel existant.

Le fichier .wri est généré de façon journalière !

Problème:
L'ouverture du fichier ne se fait pas au bon format, en effet après vérification il ouvre le .txt au format "Bloc-Note" et non "Word-Pad" ce qui transforme mes sauts de ligne en petits carrés. La récupération de caractères est donc faussée !

J'ai donc un message d'erreur lors de la compilation de type : Erreur d'execution '13' Incompatibilite de type à la ligne :

Code :
date_new_format_date = CDate(date_new_format)
Est-il possible de définir dans mon code le format d'ouverture du fichier ?
Je me suis renseigné il semble que je puisse utiliser quelque chose comme "xlWindows" mais je bloque.

Ci-dessous le début de code avec la partie relative à l'ouverture du fichier :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub ImportNewTxt()
Dim datemvt As String
Dim prodnb As String
Dim ret As String
Dim rec As String
Dim ref_d_a As String
Close #1
Open ("D:\Projet EXCEL_VB_TXT\INVRPT HAMBACH 2010\EUROFIT-FR-INVRPT.wri") For Input As #1 '-------------------------------------------------> ouverture du fichier en lecture
While Not EOF(1) '----------------------------------------------------------------------------------------------> demarrage de la boucle pour lecture du fichier
    lign$ = "" '------------------------------------------------------------------------------------------------> initialisation d une variable à ""
    Line Input #1, lign$ '--------------------------------------------------------------------------------------> lire une ligne du fichier et passage à la ligne suivante (et affactation dans une variable chaine)
        If InStr(1, lign$, "Message-Date :") <> 0 Then '--------------------------------------------------------> test sur la date
            datemvt$ = Mid$(lign$, 25, 8) '---------------------------------------------------------------------> extraction de la date
            date_new_format = Mid$(datemvt$, 1, 2) & "/" & Mid$(datemvt$, 4, 2) & "/20" & Mid$(datemvt$, 7, 2) '> changement du format d'import de la date
            date_new_format_date = CDate(date_new_format)
            Columns("B:B").Select '-----------------------------------------------------------------------------> formule pour selectionner la bonne ligne dans la colonne date en fonction de la date du fichier .txt
            With Selection.Find(date_new_format_date).Activate
            End With
            ad_date = ActiveCell.Address
        End If
Merci,

Dernière modification par Loupire ; 09/02/2010 à 09h13.
Loupire est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 08h57   #2
Invité régulier
 
Inscription : janvier 2010
Messages : 43
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : janvier 2010
Messages : 43
Points : 7
Points : 7
Personne n'a une idee sur ce probleme ?

EDIT : petite rectification, le type de fichier texte avec lequel je travaille est un fichier issu d'Open Office en .wri !

En gros j'aimerais que lors de l'execution du code ce fichier .wri soit ouvert comme en manuel sous Word-Pad et non pas comme le Bloc-Note le fait. Pour au final ne pas avoir des carres mais bien des sauts de ligne !

Merci,

Dernière modification par Loupire ; 09/02/2010 à 09h31.
Loupire est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 19h27.


 
 
 
 
Partenaires

Hébergement Web