OVH Cloud OVH Cloud

Importer données TXT dans un String

6 réponses
Avatar
rob
Bonjour,

J'aimerais copier le contenu d'un fichier txt dans une
variable String sous Excel en VBA. Auriez-vous le
code pour ?

Merci
++

6 réponses

Avatar
MichDenis
Bonjour Rob,

Il est possible de faire cela ...

Tu copies ce qui suit dans un module standard :

Tu exécutes cette procédure :" ImporterFichierTexteDansUneVariable"

'----------------------------
Sub ImporterFichierTexteDansUneVariable()

Dim LeFichier As String
Dim MaVar As String

LeFichier = "c:Excelaaa.txt" 'à déterminer
If Dir(LeFichier) <> "" Then
MaVar = LireFichierTexte(LeFichier)
Else
MsgBox "Fichier introuvable"
End If

'La Variable MaVar contient le contenu de ton fichier Texte...

End Sub

'----------------------------
Function LireFichierTexte(CheminFichier)

Dim Fs As Object
Dim FichierOuvert As Object

Set Fs = CreateObject("Scripting.FileSystemObject")
Set FichierOuvert = Fs.OpenTextFile(CheminFichier, 1)
LireFichierTexte = FichierOuvert.readall
FichierOuvert.Close
Set Fs = Nothing: Set FichierOuvert = Nothing

End Function
'----------------------------


Salutations!




"rob" a écrit dans le message de news: 42174c2b$0$1229$
Bonjour,

J'aimerais copier le contenu d'un fichier txt dans une
variable String sous Excel en VBA. Auriez-vous le
code pour ?

Merci
++
Avatar
rob
OK super ca marche nickel
thx !

"MichDenis" wrote in message
news:#
Bonjour Rob,

Il est possible de faire cela ...

Tu copies ce qui suit dans un module standard :

Tu exécutes cette procédure :" ImporterFichierTexteDansUneVariable"

'----------------------------
Sub ImporterFichierTexteDansUneVariable()

Dim LeFichier As String
Dim MaVar As String

LeFichier = "c:Excelaaa.txt" 'à déterminer
If Dir(LeFichier) <> "" Then
MaVar = LireFichierTexte(LeFichier)
Else
MsgBox "Fichier introuvable"
End If

'La Variable MaVar contient le contenu de ton fichier Texte...

End Sub

'----------------------------
Function LireFichierTexte(CheminFichier)

Dim Fs As Object
Dim FichierOuvert As Object

Set Fs = CreateObject("Scripting.FileSystemObject")
Set FichierOuvert = Fs.OpenTextFile(CheminFichier, 1)
LireFichierTexte = FichierOuvert.readall
FichierOuvert.Close
Set Fs = Nothing: Set FichierOuvert = Nothing

End Function
'----------------------------


Salutations!




"rob" a écrit dans le message de news:
42174c2b$0$1229$

Bonjour,

J'aimerais copier le contenu d'un fichier txt dans une
variable String sous Excel en VBA. Auriez-vous le
code pour ?

Merci
++





Avatar
MichDenis
Bonjour Gisèle,

Si tu veux afficher dans une cellule les centièmes de secondes :

applique ce format au cellule : [h]:mm:ss,00

Attention, la virgule représente le séparateur décimal que tu utilises dans ton application.

Les centièmes de seconde ne s'affichent pas dans la barre des formules.

Salutations!


"Gisele" a écrit dans le message de news: %23wql$
En comptabilité, nous calculons les heures en centièmes c'est-à-dire
1h15 = 1,25 17h15 = 17,25
1h30 = 1,50 20h30 = 20,50
1h45 = 1,75 00h00 = 24,00

Toutes les feuilles de paies sont ainsi rédigées. Le formatage de la cellule est celui de "Nombre" avec 2 décimales.
Gisèle
Avatar
Alain CROS
Bonjour.

Une autre sans FSO.

Sub ImportText()
Dim Fich$, Var$, I&
Fich = "c:Excelaaa.txt" 'à déterminer
If Dir(Fich) = vbNullString Then
MsgBox "Fichier introuvable"
Else
I = FreeFile
Open Fich For Input As #I
Var = Input(LOF(I), #I)
Close #I
MsgBox Var
End If
End Sub

Alain CROS

"rob" a écrit dans le message de news: 4217564c$0$845$
OK super ca marche nickel
thx !

"rob" a écrit dans le message de news:
42174c2b$0$1229$

Bonjour,

J'aimerais copier le contenu d'un fichier txt dans une
variable String sous Excel en VBA. Auriez-vous le
code pour ?

Merci
++









Avatar
Gisele
A MichDenis :
j'ai essayé ta formule pour mes centièmes d'heures mais cela ne marche pas.
Je reste avec notre façon de faire en compta, qui fonctionne. Mais je viens
aussi d'apprendre l'autre façon de faire avec votre formule [h]:mm. Je m'en
servirai pour des collègues qui ne savent pas lire les centièmes d'heures.
Merci pour ton aide. Gisèle
Avatar
MichDenis
Bonjour Gisèle,

" mais cela ne marche pas "

Je t'ai donné la manière d'afficher les centièmes de secondes dans une cellule ... mais pour le reste, je ne connais pas
encore qu'elle était ta question .... et qu'est-ce qui ne fonctionne pas ?


Salutations!



"Gisele" a écrit dans le message de news: %23m$
A MichDenis :
j'ai essayé ta formule pour mes centièmes d'heures mais cela ne marche pas.
Je reste avec notre façon de faire en compta, qui fonctionne. Mais je viens
aussi d'apprendre l'autre façon de faire avec votre formule [h]:mm. Je m'en
servirai pour des collègues qui ne savent pas lire les centièmes d'heures.
Merci pour ton aide. Gisèle