Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

récupération de champs d'un fichier vers Excel

G

gab

Guest
Bonjour,

Je souhaiterais récupérer certaines données contenues dans un fichier sans extension (une sauvegarde de mail à l'origine) dans les champs prédéfinis d'une feuille Excel.
Les actions que j'effectue :
- consultation du mail et enregistrer en local (créé le fichier sans extension appelé 'request')

Les fonctions que j'aimerais mettre en place :
Dans Excel je souhaite utiliser un module qui va chercher ce fichier (je l'ai déjà : GetOpenFilename), mais surtout je souhaite récupérer les données qui se trouvent derrière les champs
To: From: Subject: Date : Event: etc......... dans des champs prédéfinis dans mon fichier Excel.
Avec une petite variante concernant le champ Choice: où il peut y avoir plusieurs options séparées par des virgules, que je souhaite retrouver listées en colonne...

Bref si vous avez un idée, cela m'aiderait beaucoup !!!
Merci par avance !!

NB :
Voici le module que je veux utiliser pour aller chercher le fichier :
Dim fn As Variant
fn = Application.GetOpenFilename('', 1, 'Please select a request', , False)
If TypeName(fn) = 'Boolean' Then Exit Sub

et en attaché un exemple de fichier request [file name=request.zip size=112]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/request.zip[/file]
 

Pièces jointes

  • request.zip
    112 bytes · Affichages: 23
G

gab

Guest
Voilà... normalement il est complet maintenant..

Merci pour toute aide [file name=request_20060117213037.zip size=303]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/request_20060117213037.zip[/file]
 

Pièces jointes

  • request_20060117213037.zip
    303 bytes · Affichages: 26
G

gab

Guest
Voilà... normalement il est complet maintenant..

Merci pour toute aide [file name=request_20060117213154.zip size=303]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/request_20060117213154.zip[/file]
 

Pièces jointes

  • request_20060117213154.zip
    303 bytes · Affichages: 23

MichelXld

XLDnaute Barbatruc
bonsoir Gab , bonsoir Gael

cet exemple n'est pas optimisé , mais tu pourrais utiliser ce type de procedure pour extraire les données de ton fichier

Sub fichierVersExcel()
Dim Valeur As Long
Dim X As Integer, J As Integer
Dim Cible As String
Dim Fichier As String
Dim Tableau() As String, Table2() As String

Fichier = 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\dossier\\\\\\\\excel\\\\\\\\request'

Open Fichier For Input As #1
Valeur = FileLen(Fichier)
Cible = Input(Valeur, 1)
Close 1

Tableau = Split(Cible, vbLf)
For X = 0 To UBound(Tableau) - 1
J = J + 1
Cells(1, J) = Tableau(X)
Next

J = J + 1
Table2 = Split(Tableau(UBound(Tableau)), ',')
For X = 0 To UBound(Table2)
Cells(X + 1, J) = Table2(X)
Next

End Sub




bonne soirée
MichelXld
 

MichelXld

XLDnaute Barbatruc
bonjour

ci joint lla macro commentée

Sub fichierVersExcel()
Dim Valeur As Long
Dim X As Integer, J As Integer
Dim Cible As String
Dim Fichier As String
Dim Tableau() As String, Table2() As String

'le fichier à ouvrir : 'request'
Fichier = 'C:\\\\\\\\Documents and Settings\\\\\\\\michel\\\\\\\\dossier\\\\\\\\excel\\\\\\\\request'

Open Fichier For Input As #1 'ouverture du fichier 'request'
Valeur = FileLen(Fichier)
Cible = Input(Valeur, 1) 'recuperation du contenu du fichier dans une variable
Close 1

'découpage du contenu en fonction des retours à la ligne dans le fichier
Tableau = Split(Cible, vbLf)

'insertion de chaque partie découpée dans une cellule de la feuille
'jusqu'a l'avant derniere ligne du fichier :UBound(Tableau) - 1
For X = 0 To UBound(Tableau) - 1
J = J + 1
'cells(numero ligne , numero colonne)
Cells(1, J) = Tableau(X)
Next

'decoupage de la derniere ligne du fichier (champ Choice)
'en fonction des virgules utilisées comme séparateur
J = J + 1
Table2 = Split(Tableau(UBound(Tableau)), ',')
For X = 0 To UBound(Table2)
'affichage des données à la suite dans la meme colonne
Cells(X + 1, J) = Table2(X)
Next

End Sub



bonne journée
MichelXld
 
G

gab

Guest
Bonjour et merci pour ces précisions.
J'ai essayé de faire tourner cette macro brute mais j'ai une 'compile error Sub or function not defined' sur le 'split'....

QUe dois-je faire ?
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…