• Initiateur de la discussion Initiateur de la discussion Lynk Zel
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

L

Lynk Zel

Guest
bonjour ,

voila mon problème.

1 - j'aimerai cliquez sur un bouton "IMPORT FICHIER" qui m'ouvre la fenêtre windows avec tous mes fichiers .csv dedans.
2 - ensuite je choisi donc le fichier que je souhaite et je clique sur "ouvrir"
3 - Par contre, là où sa bloque c'est la mise en place des colonnes et des lignes du tableau qui doit s'afficher (en temps normale Excel ouvre différentes fenêtres pour savoir comment placer son fichier import, si c'est en ligne, en colonne mais si c'est possible de créer une macro qui peut faire directement, je suis prenneur)

je joint un fichier avec une disposition, des lignes et des colonnes à supprimer.

Si quelqu'un veut d'autres renseignements qu'il me previenne.
merci et bonne journée.
@+
 

Pièces jointes

Re : .csv vers .xls

bonjour le fil
Capri trouvé sur silkyroad,juste ajouté un pour extension fichier
à adapter disque et dossier

Option Explicit
'------------------------------------------------------------------------
'Sylkyroad
'Nécessite d'activer la référence Microsoft Outlook xx.xx Object Library
'------------------------------------------------------------------------


Dim x As Integer
'La boite de réception, la boite des éléments supprimés et tous leurs
'sous dossiers sont pris en compte.
Sub ExportePiecesJointes()
Dim Ol As New Outlook.Application
Dim Ns As Outlook.Namespace
Dim Dossier As Outlook.MAPIFolder

Set Ns = Ol.GetNamespace("MAPI")
Set Dossier = Ns.Folders(1)

SearchFolders Dossier
x = 0
End Sub


Private Sub SearchFolders(ByVal Fld As Outlook.MAPIFolder)
Dim y As Integer
Dim OLmail 'As Outlook.MailItem
Dim pceJointe As Outlook.Attachment
Dim SousDossier As Outlook.MAPIFolder

For Each SousDossier In Fld.Folders
If SousDossier.DefaultItemType = 0 Then
For Each OLmail In SousDossier.Items
If Not OLmail.Attachments.Count = 0 Then
For y = 1 To OLmail.Attachments.Count
Set pceJointe = OLmail.Attachments(y)
If Right(pceJointe.FileName, 3) = "csv" Then
x = x + 1
'à adapter disque et dossier
pceJointe.SaveAsFile "E:\essaicsv\" & x & "_" & pceJointe
Set pceJointe = Nothing
End If
Next y
End If
Next OLmail
End If
SearchFolders SousDossier
Next SousDossier
End Sub

à bientôt
 
Re : .csv vers .xls

Bonsoir le Forum, vbacrumble, Bebere

Je crois que le code de SilkyRoad ne fonctionne qu'avec Outlook mais pas avec Outlook Express

Effectivement, je l'ai testé avec OUTLOOK EXPRESS 🙁 et rien
Par contre avec OUTLOOK 2003 --- cela fonctionne impécablement 🙂

donc j'ai fait un lien entre OUTLOOK EXPRESS et OUTLOOK 2003 pour y lire mes messages....à l'entrée et la la MACRO fonctionne parfaitement...

Bien à vous et merci
Sais t'on jamais si quelqu'un sait comment le faire avec OOUTLOOK EXPRESS

CAPRI_456
 
Re : .csv vers .xls

Bonjour le Forum, Bonsoir le Forum, vbacrumble, Bebere

j'ai appliqué le code de SilkyRoad pour la récupération des CSV dans OUTLOOK 2003 -- c'est parfait.
Ces CVS sont archivés dans un répertoire D:\ESSAI2CSV = ETAPE 1

Je voudrai maintenant
---ETAPE 2 appliquer la conversion de ces CSV en XLS
---ETAPE 3 les archiver en D:\ESSAI2.XLS

J'ai tenté avec différents codes sur ce fil mais je ne parviens pas à le faire
notamment un bug dans la ligne
Set mf = mfs.OpenTextFile(.filename, 1)🙁

je joins mon code dans le fichier annexé


Merci pour votre aide
CAPRI_456

 

Pièces jointes

Re : .csv vers .xls ----LENTEUR SUR GROS FICHIERS

Bonjour le Forum,
En parcourant le fil, j'ai trouve de kiki29 sur le fil

https://www.excel-downloads.com/threads/conversion-de-fichier-csv-en-xls.81959/

Cette proposition fonctionne parfaitement
en adaptant le répertoire à scruter à tes besoins

souci😛 : la procédure fonctionne parfaitement sur des petits fichiers
sur des gros fichiers ( 2 Mo et plus) elle bug et plante tout

D'ou vient ce problème: EST-CE DU au nombre de lignes dans le fichier , ou au poids du fichier , où au VBA ??

Merci pour votre aide.

CAPRI_456
 
Re : .csv vers .xls

Le Forum, kiki29,

Merci pour cette rapidité, je pense donc que c'est là le souci, je travaille avec XLS 2003.

En attendant ton intervention, je viens de trouver une solution me semble t'il tout aussi efficace et avec moins de code ( en incorporant une ligne du code proposé par catrice dans le présent fil ) j'y arrive plus rapidement;

Le code

Sub convertisseur()
'http://www.excel-downloads.com/forum/81959-conversion-de-fichier-csv-en-xls.html
'-----------------------------------------------------------------------------------
Dim maitre As String ' déclaration de la variable de type chaîne
Dim lefichier As String
Dim b As Long
Dim t As Integer
Dim recherche As String
Dim nvfi As String

Application.ScreenUpdating = False ' désactive l'affichage
maitre = ActiveWorkbook.Name ' le nom du classeur actif est affecté à maître
lefichier = Dir("D:\ESSAICSV\*.csv") ' soit tous les fichiers se trouvant dans répertoire à scruter
While lefichier <> ""

Workbooks.Open "D:\ESSAICSV\" & lefichier 'A====== ouverture du fichier
ChDir "D:\ESSAICSV\"
Workbooks.OpenText FileName:=lefichier, DataType:=xlDelimited, Other:=True, OtherChar:=","
' CI _DESSUS la ligne pour convertir CSV en XLS
ActiveWorkbook.SaveAs FileName:="D:\ESSAIXLS\" + Mid(ActiveWorkbook.Name, 1, Len(ActiveWorkbook.Name) - 4) & ".xls", FileFormat:=xlExcel5, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False ' = renommer avec extension XLS


nvfi = ActiveWorkbook.Name
Workbooks(nvfi).Close ' = fermeture du fichier ("D:\ESSAICSV\*.csv")

lefichier = Dir() ' pour affecter le nom de fichier suivant dans
'Workbooks(maitre).Activate

Wend 'continuer
Application.ScreenUpdating = True ' active l'affichage "flash d'écran"



Voilà un problème réglè ,

Merci à tous
CAPRI_456
 
Re : .csv vers .xls

Bonjour à tous,
je me permet de relancer ce sujet suite à un problème assez urgent que je rencontre actuellement.

J'ai testé vos solutions, ça marche pas mal mais le problème dans mon cas... c'est les accents !! J'en possède dans mon CSV et lors de la conversion et bien ça ne fonctionne pas vraiment TipTop.

Quelqu'un à une solution pour les garder?????

Merci pour votre réponse rapide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
19
Affichages
761
Réponses
3
Affichages
289
D
  • Question Question
2
Réponses
28
Affichages
2 K
Deleted member 441486
D
Réponses
0
Affichages
189
Retour