OVH Cloud OVH Cloud

Ouverture avec Excel d'un document trop lourd

2 réponses
Avatar
olivieracco
J'ai un pb: Excel ne veut pas ouvrir en entier un document .csv, car il est
trop lourd (nombre de lignes>60 000). Comment faire pour obtenir mes données
complètes? Merci.

2 réponses

Avatar
anonymousA
bonjour,

un exemple non pas d'ouverture mais d'importation de données dans un ficheir
Excel lorsque le fichier source fait plus den 65536 lignes.
A adapter à ton problème

Sub ImportLargeFile()

'Imports un fichier texte dans Excel en utilsant ADO.
si le nbre de lignes excede 65536, crée une feuille supplémentaire.

Dim strFilePath As String, strFilename As String, strFullPath As String
Dim lngCounter As Long
Dim oConn As Object, oRS As Object, oFSObj As Object


'Get a text file name
strFullPath = Application.GetOpenFilename("Text Files (*.txt),*.txt", ,
"Selectionner le fichier...")

If strFullPath = "False" Then Exit Sub 'Utilisateur a préssé Cancel dasn la
boite de dialogue
Application.ScreenUpdating = False


'Dtéremine le path et le nom du fichier
Set oFSObj = CreateObject("SCRIPTING.FILESYSTEMOBJECT")

strFilePath = oFSObj.GetFile(strFullPath).ParentFolder.Path
strFilename = oFSObj.GetFile(strFullPath).Name


'Ouvre une connection vers le répertoire spécifié
Set oConn = CreateObject("ADODB.CONNECTION")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & strFilePath & ";" & _
"Extended Properties=""text;HDR=Yes;FMTÞlimited"""

Set oRS = CreateObject("ADODB.RECORDSET")

'ouvre le fichier et importe dasn Excel
oRS.Open "SELECT * FROM " & strFilename, oConn, 3, 1, 1
While Not oRS.EOF
Sheets.Add
ActiveSheet.Range("A1").CopyFromRecordset oRS, 65536
Wend

oRS.Close
oConn.Close

Application.ScreenUpdating = True


End Sub

A+


J'ai un pb: Excel ne veut pas ouvrir en entier un document .csv, car il est
trop lourd (nombre de lignes>60 000). Comment faire pour obtenir mes données
complètes? Merci.


Avatar
Clément Marcotte
http://frederic.sigonneau.free.fr


"olivieracco" a écrit dans le
message de news:
J'ai un pb: Excel ne veut pas ouvrir en entier un document .csv, car
il est

trop lourd (nombre de lignes>60 000). Comment faire pour obtenir mes
données

complètes? Merci.