This is working for me, but the file extension is not changing. Any tips?
-
To post as a guest, your comment is unpublished.
-
To post as a guest, your comment is unpublished.
Pour convertir un fichier CSV en fichier XlS ou XLSX est très facile pour vous en appliquant la fonction Enregistrer sous. Cependant, convertir plusieurs fichiers CSV en fichiers XLS ou XLSX à partir d'un dossier prend du temps en les enregistrant un par un manuellement. Ici, j'introduis un code macro pour convertir rapidement par lots tous les fichiers CSV en fichiers XLS (x) à partir d'un dossier.
Conversion par lots de fichiers CSV en fichiers XlS (X) avec un code macro
Pour convertir plusieurs fichiers CSV d'un dossier en fichiers XLS (X), vous pouvez procéder comme suit:
1. Activez un nouveau classeur, appuyez sur Alt + F11 clés pour ouvrir Microsoft Visual Basic pour applications fenêtre, et cliquez sur insérer > Module. Voir la capture d'écran:
importante: Assurez-vous que tous les fichiers CSV que vous souhaitez convertir sont fermés.
2. Collez ensuite le code de macro ci-dessous dans le Module script et appuyez sur F5 clé pour exécuter le code.
VBA: convertir CSV en XLS
Sub CSVtoXLS() 'UpdatebyExtendoffice20170814 Dim xFd As FileDialog Dim xSPath As String Dim xCSVFile As String Dim xWsheet As String Application.DisplayAlerts = False Application.StatusBar = True xWsheet = ActiveWorkbook.Name Set xFd = Application.FileDialog(msoFileDialogFolderPicker) xFd.Title = "Select a folder:" If xFd.Show = -1 Then xSPath = xFd.SelectedItems(1) Else Exit Sub End If If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\" xCSVFile = Dir(xSPath & "*.csv") Do While xCSVFile <> "" Application.StatusBar = "Converting: " & xCSVFile Workbooks.Open Filename:=xSPath & xCSVFile ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xls", vbTextCompare), xlNormal ActiveWorkbook.Close Windows(xWsheet).Activate xCSVFile = Dir Loop Application.StatusBar = False Application.DisplayAlerts = True End Sub
3. Dans la boîte de dialogue contextuelle, sélectionnez le dossier spécifié contenant les fichiers CSV que vous souhaitez convertir. Voir la capture d'écran:
4. Cliquez OK, tous les fichiers CSV du dossier sélectionné ont été convertis en fichiers XLS.
Trucs: Si vous souhaitez convertir des fichiers CSV en fichiers XLSX, vous utilisez le code VBA ci-dessous.
VBA: convertir des fichiers CSV en XLSX
Sub CSVtoXLS() 'UpdatebyExtendoffice20170814 Dim xFd As FileDialog Dim xSPath As String Dim xCSVFile As String Dim xWsheet As String Application.DisplayAlerts = False Application.StatusBar = True xWsheet = ActiveWorkbook.Name Set xFd = Application.FileDialog(msoFileDialogFolderPicker) xFd.Title = "Select a folder:" If xFd.Show = -1 Then xSPath = xFd.SelectedItems(1) Else Exit Sub End If If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\" xCSVFile = Dir(xSPath & "*.csv") Do While xCSVFile <> "" Application.StatusBar = "Converting: " & xCSVFile Workbooks.Open Filename:=xSPath & xCSVFile ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xlsx", vbTextCompare), xlWorkbookDefault ActiveWorkbook.Close Windows(xWsheet).Activate xCSVFile = Dir Loop Application.StatusBar = False Application.DisplayAlerts = True End Sub
convertir ou exporter rapidement une plage de feuilles pour séparer les fichiers XLS / Word / PDF ou d'autres formats en une seule fois
|
Normalement, Excel ne vous prend pas en charge avec une option pour exporter ou enregistrer rapidement une plage sous forme de fichier CSV ou Excel. Si vous souhaitez enregistrer une plage de données au format CSV ou classeur dans Excel, vous devrez peut-être utiliser une macro VBA pour ce faire ou copier la plage dans le presse-papiers et la coller dans un nouveau classeur, puis enregistrer le classeur au format CSV ou Classeur. Kutools pour Excel augmente Excel avec Exporter la plage vers un fichier utilitaire pour les utilisateurs d'Excel qui souhaitent traiter rapidement les opérations suivantes : Cliquez pour un essai gratuit complet de 30 jours! |
![]() |
Kutools for Excel: avec plus de 300 compléments Excel pratiques, essayez gratuitement sans limitation en 30 jours. |