Ouvrir un fichier .CSV de façon "stupide" ? [EXCEL] - Logiciels - Windows & Software
Marsh Posté le 15-06-2007 à 15:48:43
Bonsoir,
Données->données externes->importer
choisir séparateur ; et pour chaque colonne cocher format texte
Cordialement
Marsh Posté le 15-06-2007 à 16:33:26
Merci, j'essaierai
Sinon, y'a pas moyen de faire ça automatiquemen à l'ouverture du fichier ? Genre, si qqu'un a un lien vers une macro, ou autre...
Marsh Posté le 15-06-2007 à 20:57:15
Bonsoir,
Sub Macro3()
'
' Macro2 Macro
' Macro enregistrée le 15/06/2007 par PAPOU
'
Dim var1, var2, var3
var1 = "C:\toto\" 'disque ou disque/répertoire pour se positionner
var2 = "All Files (*.*)|*.*|CSV Files (*.csv)|*.csv"
aaa = BrowseForFile(var1, var2)
' pstrPath = var1 le chemin
' pstrFilter = var2 soit le type de fichiers recherché
If aaa <> "" Then
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & aaa, Destination:=Range("A1" ))
.Name = "essaicsv"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End If
End Sub
Function BrowseForFile(pstrPath, pstrFilter)
Set objDialog = CreateObject("UserAccounts.CommonDialog" )
objDialog.Filter = pstrFilter
'objDialog.Filter = "All Files (*.*)|*.*|CSV Files (*.csv)|*.csv"
objDialog.InitialDir = pstrPath
objDialog.Flags = &H80000 + &H4 + &H8 'position de la fenêtre
intResult = objDialog.ShowOpen
BrowseForFile = objDialog.Filename 'récupération du nom du fichier sélectionné
End Function
Cordialement
Marsh Posté le 16-06-2007 à 14:08:49
O_o
Ben dis donc, merci beaucoup, c'est très sympa !
J'essaie ça dès que je reviens au boulot
Marsh Posté le 15-06-2007 à 10:21:56
Bonjour,
Je vous explique mon problème : j'ai une appli qui me génère un fichier .csv, qui, ouvert dans notepad par exemple, contient ceci :
olivier;00223603;55.6;55,8;00789000000000001
Une fois ouvert dans Excel (version 2002 SP3), les données sont remises en forme automatiquement :
olivier 223603 55.6 55,8 7.89E+14
Comment puis-je supprimer cette mise en forme autmatique pour TOUS mes fichiers .csv (autrement dit, que le contenu des fichiers .csv soit toujours traité comme des chaînes de caractères) ?
Merci pour votre aide, Excel est en trainde me faire péter une durite là