Je viens de tester la meme chose sans la copie, c'est a dire en selectionnant la derniere sheet puis enregistrer le workbook. Au bout de 101 enregistrements le programme se bloque.
Comme il s'agit d'une creation de base de donnees, est ce qu'il n'y aurait pas des restrictions sur le nb d'importations d'internet?
Je viens de tester la meme chose sans la copie, c'est a dire en selectionnant la derniere sheet puis en enregistrant le workbook. Au bout de 101 enregistrements le programme se bloque ?!
Comme il s'agit d'une creation de base de donnees, est ce qu'il n'y aurait pas des restrictions sur le nb d'importations d'internet?
Exercice pour zeb : Relire la doc avant de demander à Adri1 de la lire
Alors je te le fais gratos pour la peine :
Testé et approuvé Sans garantie pour autant
( Tout ça parce que SaveAs et SaveCopyAs ne sont pas équivalentes et parce que Sheets(..).SaveAs sauvegarde tout le classeur Mais pourquoi utiliser VBA !!! )
Code :
Option Explicit
Sub Cado()
Dim wb As Workbook
Dim ws As Worksheet
Dim alert As Boolean
Dim tmp As String
tmp = Environ("TEMP" ) & "\CLS_TMP.XLS"
alert = Application.DisplayAlerts
Application.DisplayAlerts = False
' // Ouverture du classeur à copier
Set wb = Workbooks.Open(Filename:="Classeur_a_copier.xls", ReadOnly:=True)
' // On enregistre le classeur dans une copie temporaire
wb.SaveCopyAs tmp
' // On ouvre le classeur temporaire
Set wb = Workbooks.Open(tmp)
' // On supprime toutes les feuilles inutiles.
' // Comme ça, on est sûr que ce sera la bonne.
For Each ws In wb.Sheets
If ws.Name <> "Feuil2" Then ws.Delete
Next
' // On enregistre comme CSV
' // Le classeur temporaire existe toujours sur le disque dur
' // mais il est remplacé par la feuille CSV dans Excel
Euh, si, si. La copie est en XLS. Temp, c'est le dossier où est copié le fichier temporaire au format XLS. Pour t'en convaincre, exécute ce petit bout de code :
Msgbox Environ("TEMP" )
Ou alors, n'exécute pas la commande (Ligne 37)
Kill tmp
et va voir le fichier Environ("TEMP" ) & "\CLS_TMP.XLS". C'est bien un fichier Excel.
On est oblige de passer par une copie temp du workbook en .xls pour eviter la limitation de copies de la page,
de supprimer toutes les pages-1,
pour enfin enregistrer cette copie en format voulu...
Hier encore mon programme s'est encore bloque a 86 .txt , va falloir que je regarde encore de plus pres, j' ai des milliers de txt a faire... Tu ne serais pas au courant d'autres restrictions?