Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Import fichier csv

5 réponses
Avatar
LE TROLL
Bonjour,

On a posé une question dans VB6 et >, sur la
construction sous Excel d'un fichier CSV, j'ai
donné le code, mais le problème est que chaque
ligne contient l'ensemble des cellules de cette
dernière.
Autrement dit, comment indiquer depuis le code
qu'il faut utiliser le séparateur " ; " pour
mettre dans chaque cellule de chaque ligne, voici
ce que j'ai écrit:

Sub Form_Load()
Dim colonne As Long
Dim ligne As Long
Dim pointeur As Long
Dim faute As String
Dim une_ligne As String
'Pour mon test, laisser ainsi
'Dim ta_cellule(41, 41) As String
'For ligne = 1 To 40
'For colonne = 1 To 40
'ta_cellule(colonne, ligne) = colonne * ligne
'Next colonne
'Next ligne
'
ChDrive App.Path
ChDir App.Path
pointeur = FreeFile
On Error GoTo erreur
Open "nom_de_fichier.xls" For Output As pointeur
For ligne = 1 To 40
une_ligne = ""
For colonne = 1 To 40
une_ligne = une_ligne &
ta_cellule(colonne, ligne) & ";"
Next colonne
Print #pointeur, une_ligne
Next ligne
Close pointeur
Exit Sub
erreur:
Close pointeur
faute = " ERREUR : Enrégistrement fichier " &
vbLf
faute = faute & Err.Number & vbLf
faute = faute & Err.Description & vbLf
faute = faute & Err.Source & vbLf
On Error Resume Next
MsgBox faute
End Sub


--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------

5 réponses

Avatar
Daniel.C
Bonjour.
Je n'ai pas compris si ta macro résolvait le problème ?
Avec XL2003, tu peux utiliser l'option Local = True de "SaveAs" pour obtenir
un ";" comme séparateur. Il utilise alors les paramètres locaux de Windows.
Cordialement.
Daniel
LE TROLL" <le a écrit dans le message de news:
%
Bonjour,

On a posé une question dans VB6 et >, sur la
construction sous Excel d'un fichier CSV, j'ai
donné le code, mais le problème est que chaque
ligne contient l'ensemble des cellules de cette
dernière.
Autrement dit, comment indiquer depuis le code
qu'il faut utiliser le séparateur " ; " pour
mettre dans chaque cellule de chaque ligne, voici
ce que j'ai écrit:

Sub Form_Load()
Dim colonne As Long
Dim ligne As Long
Dim pointeur As Long
Dim faute As String
Dim une_ligne As String
'Pour mon test, laisser ainsi
'Dim ta_cellule(41, 41) As String
'For ligne = 1 To 40
'For colonne = 1 To 40
'ta_cellule(colonne, ligne) = colonne * ligne
'Next colonne
'Next ligne
'
ChDrive App.Path
ChDir App.Path
pointeur = FreeFile
On Error GoTo erreur
Open "nom_de_fichier.xls" For Output As pointeur
For ligne = 1 To 40
une_ligne = ""
For colonne = 1 To 40
une_ligne = une_ligne &
ta_cellule(colonne, ligne) & ";"
Next colonne
Print #pointeur, une_ligne
Next ligne
Close pointeur
Exit Sub
erreur:
Close pointeur
faute = " ERREUR : Enrégistrement fichier " &
vbLf
faute = faute & Err.Number & vbLf
faute = faute & Err.Description & vbLf
faute = faute & Err.Source & vbLf
On Error Resume Next
MsgBox faute
End Sub


--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------




Avatar
LE TROLL
Bonjour, merci... non, pas résolu, peut être
est-ce impossible à partir du code ?

--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Daniel.C" a écrit dans
le message de news:

| Bonjour.
| Je n'ai pas compris si ta macro résolvait le
problème ?
| Avec XL2003, tu peux utiliser l'option Local =
True de "SaveAs" pour obtenir
| un ";" comme séparateur. Il utilise alors les
paramètres locaux de Windows.
| Cordialement.
| Daniel
| LE TROLL" <le a écrit dans le
message de news:
| %
| > Bonjour,
| >
| > On a posé une question dans VB6 et >, sur
la
| > construction sous Excel d'un fichier CSV, j'ai
| > donné le code, mais le problème est que chaque
| > ligne contient l'ensemble des cellules de
cette
| > dernière.
| > Autrement dit, comment indiquer depuis le code
| > qu'il faut utiliser le séparateur " ; " pour
| > mettre dans chaque cellule de chaque ligne,
voici
| > ce que j'ai écrit:
| >
| > Sub Form_Load()
| > Dim colonne As Long
| > Dim ligne As Long
| > Dim pointeur As Long
| > Dim faute As String
| > Dim une_ligne As String
| > 'Pour mon test, laisser ainsi
| > 'Dim ta_cellule(41, 41) As String
| > 'For ligne = 1 To 40
| > 'For colonne = 1 To 40
| > 'ta_cellule(colonne, ligne) = colonne * ligne
| > 'Next colonne
| > 'Next ligne
| > '
| > ChDrive App.Path
| > ChDir App.Path
| > pointeur = FreeFile
| > On Error GoTo erreur
| > Open "nom_de_fichier.xls" For Output As
pointeur
| > For ligne = 1 To 40
| > une_ligne = ""
| > For colonne = 1 To 40
| > une_ligne = une_ligne &
| > ta_cellule(colonne, ligne) & ";"
| > Next colonne
| > Print #pointeur, une_ligne
| > Next ligne
| > Close pointeur
| > Exit Sub
| > erreur:
| > Close pointeur
| > faute = " ERREUR : Enrégistrement fichier " &
| > vbLf
| > faute = faute & Err.Number & vbLf
| > faute = faute & Err.Description & vbLf
| > faute = faute & Err.Source & vbLf
| > On Error Resume Next
| > MsgBox faute
| > End Sub
| >
| >
| > --
| > Merci beaucoup, au revoir et à bientôt :o)
| > ------
| > Romans, logiciels, email, site personnel
| > http://irolog.free.fr/joe.htm
|
------------------------------------------------------------------------------------
| >

| >
|
|

Avatar
Daniel.C
Je n'ai pas saisi quel est le problème avec ton code. Qu'est-ce qui est
incorrect ?
Daniel
"LE TROLL" <le a écrit dans le message de news:
Oakwh%
Bonjour, merci... non, pas résolu, peut être
est-ce impossible à partir du code ?

--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Daniel.C" a écrit dans
le message de news:

| Bonjour.
| Je n'ai pas compris si ta macro résolvait le
problème ?
| Avec XL2003, tu peux utiliser l'option Local > True de "SaveAs" pour obtenir
| un ";" comme séparateur. Il utilise alors les
paramètres locaux de Windows.
| Cordialement.
| Daniel
| LE TROLL" <le a écrit dans le
message de news:
| %
| > Bonjour,
| >
| > On a posé une question dans VB6 et >, sur
la
| > construction sous Excel d'un fichier CSV, j'ai
| > donné le code, mais le problème est que chaque
| > ligne contient l'ensemble des cellules de
cette
| > dernière.
| > Autrement dit, comment indiquer depuis le code
| > qu'il faut utiliser le séparateur " ; " pour
| > mettre dans chaque cellule de chaque ligne,
voici
| > ce que j'ai écrit:
| >
| > Sub Form_Load()
| > Dim colonne As Long
| > Dim ligne As Long
| > Dim pointeur As Long
| > Dim faute As String
| > Dim une_ligne As String
| > 'Pour mon test, laisser ainsi
| > 'Dim ta_cellule(41, 41) As String
| > 'For ligne = 1 To 40
| > 'For colonne = 1 To 40
| > 'ta_cellule(colonne, ligne) = colonne * ligne
| > 'Next colonne
| > 'Next ligne
| > '
| > ChDrive App.Path
| > ChDir App.Path
| > pointeur = FreeFile
| > On Error GoTo erreur
| > Open "nom_de_fichier.xls" For Output As
pointeur
| > For ligne = 1 To 40
| > une_ligne = ""
| > For colonne = 1 To 40
| > une_ligne = une_ligne &
| > ta_cellule(colonne, ligne) & ";"
| > Next colonne
| > Print #pointeur, une_ligne
| > Next ligne
| > Close pointeur
| > Exit Sub
| > erreur:
| > Close pointeur
| > faute = " ERREUR : Enrégistrement fichier " &
| > vbLf
| > faute = faute & Err.Number & vbLf
| > faute = faute & Err.Description & vbLf
| > faute = faute & Err.Source & vbLf
| > On Error Resume Next
| > MsgBox faute
| > End Sub
| >
| >
| > --
| > Merci beaucoup, au revoir et à bientôt :o)
| > ------
| > Romans, logiciels, email, site personnel
| > http://irolog.free.fr/joe.htm
|
------------------------------------------------------------------------------------
| >

| >
|
|





Avatar
LE TROLL
Je voudrais rajouter, mais je ne sais comment,
qu'Excel prennent comme paramètre d'ouverture du
fichier, le ";" pour la séparation des cellules
dans chacune des lignes de ce fichier csv ?

--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Daniel.C" a écrit dans
le message de news:

| Je n'ai pas saisi quel est le problème avec ton
code. Qu'est-ce qui est
| incorrect ?
| Daniel
| "LE TROLL" <le a écrit dans le
message de news:
| Oakwh%
| > Bonjour, merci... non, pas résolu, peut être
| > est-ce impossible à partir du code ?
| >
| > --
| > Merci beaucoup, au revoir et à bientôt :o)
| > ------
| > Romans, logiciels, email, site personnel
| > http://irolog.free.fr/joe.htm
|
------------------------------------------------------------------------------------
| > "Daniel.C" a écrit

dans
| > le message de news:
| >
| > | Bonjour.
| > | Je n'ai pas compris si ta macro résolvait le
| > problème ?
| > | Avec XL2003, tu peux utiliser l'option Local
| > True de "SaveAs" pour obtenir
| > | un ";" comme séparateur. Il utilise alors
les
| > paramètres locaux de Windows.
| > | Cordialement.
| > | Daniel
| > | LE TROLL" <le a écrit dans
le
| > message de news:
| > | %
| > | > Bonjour,
| > | >
| > | > On a posé une question dans VB6 et >,
sur
| > la
| > | > construction sous Excel d'un fichier CSV,
j'ai
| > | > donné le code, mais le problème est que
chaque
| > | > ligne contient l'ensemble des cellules de
| > cette
| > | > dernière.
| > | > Autrement dit, comment indiquer depuis le
code
| > | > qu'il faut utiliser le séparateur " ; "
pour
| > | > mettre dans chaque cellule de chaque
ligne,
| > voici
| > | > ce que j'ai écrit:
| > | >
| > | > Sub Form_Load()
| > | > Dim colonne As Long
| > | > Dim ligne As Long
| > | > Dim pointeur As Long
| > | > Dim faute As String
| > | > Dim une_ligne As String
| > | > 'Pour mon test, laisser ainsi
| > | > 'Dim ta_cellule(41, 41) As String
| > | > 'For ligne = 1 To 40
| > | > 'For colonne = 1 To 40
| > | > 'ta_cellule(colonne, ligne) = colonne *
ligne
| > | > 'Next colonne
| > | > 'Next ligne
| > | > '
| > | > ChDrive App.Path
| > | > ChDir App.Path
| > | > pointeur = FreeFile
| > | > On Error GoTo erreur
| > | > Open "nom_de_fichier.xls" For Output As
| > pointeur
| > | > For ligne = 1 To 40
| > | > une_ligne = ""
| > | > For colonne = 1 To 40
| > | > une_ligne = une_ligne &
| > | > ta_cellule(colonne, ligne) & ";"
| > | > Next colonne
| > | > Print #pointeur, une_ligne
| > | > Next ligne
| > | > Close pointeur
| > | > Exit Sub
| > | > erreur:
| > | > Close pointeur
| > | > faute = " ERREUR : Enrégistrement fichier
" &
| > | > vbLf
| > | > faute = faute & Err.Number & vbLf
| > | > faute = faute & Err.Description & vbLf
| > | > faute = faute & Err.Source & vbLf
| > | > On Error Resume Next
| > | > MsgBox faute
| > | > End Sub
| > | >
| > | >
| > | > --
| > | > Merci beaucoup, au revoir et à bientôt :o)
| > | > ------
| > | > Romans, logiciels, email, site personnel
| > | > http://irolog.free.fr/joe.htm
| > |
| >
------------------------------------------------------------------------------------
| > | >

| > | >
| > |
| > |
| >
| >
|
|

Avatar
Daniel.C
Essaie :

Sub Form_Load()
Dim colonne As Long
Dim ligne As Long
Dim pointeur As Long
Dim faute As String
Dim une_ligne As String
'Pour mon test, laisser ainsi
'Dim ta_cellule(41, 41) As String
'For ligne = 1 To 40
'For colonne = 1 To 40
'ta_cellule(colonne, ligne) = colonne * ligne
'Next colonne
'Next ligne
'
ChDrive Application.Path
ChDir Application.Path
pointeur = FreeFile
On Error GoTo erreur
Open "nom_de_fichier.csv" For Output As pointeur
For ligne = 1 To 40
une_ligne = ""
For colonne = 1 To 40
une_ligne = une_ligne & Cells(colonne, ligne) & ";"
Next colonne
Print #pointeur, une_ligne
Next ligne
Close pointeur
Exit Sub
erreur:
Close pointeur
faute = " ERREUR : Enrégistrement fichier " & vbLf
faute = faute & Err.Number & vbLf
faute = faute & Err.Description & vbLf
faute = faute & Err.Source & vbLf
On Error Resume Next
MsgBox faute
End Sub

Daniel
"LE TROLL" <le a écrit dans le message de news:

Je voudrais rajouter, mais je ne sais comment,
qu'Excel prennent comme paramètre d'ouverture du
fichier, le ";" pour la séparation des cellules
dans chacune des lignes de ce fichier csv ?

--
Merci beaucoup, au revoir et à bientôt :o)
------
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Daniel.C" a écrit dans
le message de news:

| Je n'ai pas saisi quel est le problème avec ton
code. Qu'est-ce qui est
| incorrect ?
| Daniel
| "LE TROLL" <le a écrit dans le
message de news:
| Oakwh%
| > Bonjour, merci... non, pas résolu, peut être
| > est-ce impossible à partir du code ?
| >
| > --
| > Merci beaucoup, au revoir et à bientôt :o)
| > ------
| > Romans, logiciels, email, site personnel
| > http://irolog.free.fr/joe.htm
|
------------------------------------------------------------------------------------
| > "Daniel.C" a écrit

dans
| > le message de news:
| >
| > | Bonjour.
| > | Je n'ai pas compris si ta macro résolvait le
| > problème ?
| > | Avec XL2003, tu peux utiliser l'option Local
| > True de "SaveAs" pour obtenir
| > | un ";" comme séparateur. Il utilise alors

les
| > paramètres locaux de Windows.
| > | Cordialement.
| > | Daniel
| > | LE TROLL" <le a écrit dans
le
| > message de news:
| > | %
| > | > Bonjour,
| > | >
| > | > On a posé une question dans VB6 et >,
sur
| > la
| > | > construction sous Excel d'un fichier CSV,
j'ai
| > | > donné le code, mais le problème est que
chaque
| > | > ligne contient l'ensemble des cellules de
| > cette
| > | > dernière.
| > | > Autrement dit, comment indiquer depuis le
code
| > | > qu'il faut utiliser le séparateur " ; "
pour
| > | > mettre dans chaque cellule de chaque
ligne,
| > voici
| > | > ce que j'ai écrit:
| > | >
| > | > Sub Form_Load()
| > | > Dim colonne As Long
| > | > Dim ligne As Long
| > | > Dim pointeur As Long
| > | > Dim faute As String
| > | > Dim une_ligne As String
| > | > 'Pour mon test, laisser ainsi
| > | > 'Dim ta_cellule(41, 41) As String
| > | > 'For ligne = 1 To 40
| > | > 'For colonne = 1 To 40
| > | > 'ta_cellule(colonne, ligne) = colonne *
ligne
| > | > 'Next colonne
| > | > 'Next ligne
| > | > '
| > | > ChDrive App.Path
| > | > ChDir App.Path
| > | > pointeur = FreeFile
| > | > On Error GoTo erreur
| > | > Open "nom_de_fichier.xls" For Output As
| > pointeur
| > | > For ligne = 1 To 40
| > | > une_ligne = ""
| > | > For colonne = 1 To 40
| > | > une_ligne = une_ligne &
| > | > ta_cellule(colonne, ligne) & ";"
| > | > Next colonne
| > | > Print #pointeur, une_ligne
| > | > Next ligne
| > | > Close pointeur
| > | > Exit Sub
| > | > erreur:
| > | > Close pointeur
| > | > faute = " ERREUR : Enrégistrement fichier
" &
| > | > vbLf
| > | > faute = faute & Err.Number & vbLf
| > | > faute = faute & Err.Description & vbLf
| > | > faute = faute & Err.Source & vbLf
| > | > On Error Resume Next
| > | > MsgBox faute
| > | > End Sub
| > | >
| > | >
| > | > --
| > | > Merci beaucoup, au revoir et à bientôt :o)
| > | > ------
| > | > Romans, logiciels, email, site personnel
| > | > http://irolog.free.fr/joe.htm
| > |
| >
------------------------------------------------------------------------------------
| > | >

| > | >
| > |
| > |
| >
| >
|
|