mauvais format après import

la croisée des pains

XLDnaute Occasionnel
bonjour à tous
après lecture des messages sur le forum ,excercice et essai sur le fichier je n'arrive toujours pas lors du lancement de la macro import à convertir le fichier comme je le voudrais.
j'espère avoir de l'aide
merci à vous de me consacrer queleques instants

laurent ;) [file name=importcsv2.zip size=19770]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/importcsv2.zip[/file]
 

Pièces jointes

  • importcsv2.zip
    19.3 KB · Affichages: 28

la croisée des pains

XLDnaute Occasionnel
bonjour hellboy, et le forum

je t'envoie le fichier article tel qu'il sorte de l'export de mon logiciel de caisse sachant que ces fichiers ne peuvent pas etre modifié à la base du logiciel et de l'export

laurent
merci de ton aide
[file name=Articles.zip size=6475]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Articles.zip[/file]
 

Pièces jointes

  • Articles.zip
    6.3 KB · Affichages: 23
  • Articles.zip
    6.3 KB · Affichages: 21
  • Articles.zip
    6.3 KB · Affichages: 22

Hellboy

XLDnaute Accro
re

Je ne suis pas sure de suivre de qui part ou et qui créer quoi.
Mais lorsque tu veux créer un fichier .csv, donc tu part de Excel et tu tape ton info normalement ds les cellules et ensuite tu sauve ton fichier en précisant le format de sortie soit CVS.
 

la croisée des pains

XLDnaute Occasionnel
re hellboy,

voila,
le soir ma caisse enregistreuse fait une remontée de caisse avec un logiciel et je peux exporter cette remontée en csv appelé article.
cette export se crait dans in fichier apellé export estérel csv.
mais pour utilisé le fichier import que j'ai joint le fichier doit etre modifié a chaque fois qcar le format n'est pas bon lors de l'import.
je pense qu'il faut rajouter une ligne dans le vba pour qu'il convertisse lors de l'import

j'espère que tum'as compris
laurent
 

Hellboy

XLDnaute Accro
Re

Cool ton Logo en passant !

Je m'en allais te posé certaines questions et tu viens d'en répondre a quelque unes.

Mais il me reste ceux-ci et après ça devrait aller. Avant tout, je dois dire que Excel reconnait directement le format CSV. C'est a dire que tu n'as pas besoin de passer par un filtre de Import. Tu peu le faire quand même, en précisant autre caractère pour séparateur, et tu met le point virgule. Ceci dis, voici les autres questions:

1- Est-ce que tu crer un fichier cumulatif des remontées ou c'est un nouveau fichier a chaque fois.
2- La date, tu la met toi même ou tu la met automatique ou tu aimerais le faire.
3- je m'en rappel plus

Si tu pense a autre chose tu le dis.

En attendant, je commence a te faire un ébauche pour ton Import et si tu peux répondre au question, je te rajoute le reste si tu veux .

a+
 

Hellboy

XLDnaute Accro
re

Juste ces trois lignes de code peuveut répondre a une partie de ton problème.

Code:
Dim m_fichier As Variant
    m_fichier = Application.GetOpenFilename('CSV Files (*.csv),*.csv', , 'Ouverture fichier Remonté de Caisse', , True)
    Workbooks.Open Filename:=m_fichier

j'attend tes réponces pour le reste.

a+
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour La croisée des pains, Hellboy, le forum

Ah les CSV et leur import qui ne fonctionne pas en VBA!!!
voici quelques fils ou on a traité ce problème avec succés

Cordialement, A+

Lien supprimé
Lien supprimé
Lien supprimé

Message édité par: yeahou, à: 15/07/2005 23:25
 

Hellboy

XLDnaute Accro
re

Je fais vite, mais on se reparle demain. voici le code que j'ai modifier et je t'envois le fichier sur lequel j'ai travaillé.


Private Sub Workbook_Open()
Call import_csv
End Sub

Option Explicit
Dim clas_csv As String
Public clas_trav As String
Public fls_trav As String
Public m_fichier As Variant

Sub import_csv()
   
Dim m_fichier As Variant
    m_fichier = Application.GetOpenFilename('CSV Files (*.csv),*.csv', , 'Ouverture fichier Remonté de Caisse', , True)
    Workbooks.Open Filename:=m_fichier
    clas_csv = ActiveWorkbook.Name
   
Call trie_col_A
   
Call Ajout_entête_date
End Sub


Sub trie_col_A()
    Selection.CurrentRegion.Select
    Selection.Sort Key1:=Range('A1'), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortTextAsNumbers
End Sub



Public Sub Ajout_entête_date()
Dim strDate As Date
Dim strDateTemp As String

With ActiveWorkbook.Sheets(1)
      .Rows('1:1').Insert Shift:=xlDown
      .Cells(1, 1) = 'Produit'
      .Cells(1, 2) = 'Quantité'
      .Cells(1, 3) = 'Prix'
      .Cells(1, 4) = 'Date'
      strDateTemp = Right(.Name, 8)
      strDate = CDate(Mid(strDateTemp, 1, 2) & '-' & Mid(strDateTemp, 3, 2) & '-' & Mid(strDateTemp, 5, 8))
      .Range(.Cells(2, 4), .Cells(.Cells(65000, 1).End(xlUp).Row, 4)).Value = strDate
End With

End Sub




Tu me donne des nouvelles s.v.p.

Merci !

a+
 

la croisée des pains

XLDnaute Occasionnel
re,
trop pressé j'aie ssayé le code mais cela coince ici

Sub import_csv()
Dim m_fichier As Variant
m_fichier = Application.GetOpenFilename('CSV Files (*.csv),*.csv', , 'Ouverture fichier Remonté de Caisse', , True)
Workbooks.Open Filename:=m_fichier
clas_csv = ActiveWorkbook.Name
Call trie_col_A
Call Ajout_entête_date
End Sub

laurent
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour

qu'est ce qui coince ?

si tes données ne sont pas en colonne, essaye de passer un texttocolumns sur la colonne A aprés l'ouverture.

A+

voici le code
Code:
Columns('A:A').TextToColumns DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
        ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, Comma:=False, _
        Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array( _
        3, 1), Array(4, 1)), DecimalSeparator:='.', TrailingMinusNumbers:=True
 

Discussions similaires

Statistiques des forums

Discussions
312 579
Messages
2 089 900
Membres
104 300
dernier inscrit
katlynefortin