Macro qui génére un fichier enorme ??

assniok

XLDnaute Occasionnel
Bonsoir tout le monde,

j'ai un gros pb (c'est le cas de le dire...), j'ai créé une sorte de petite application pour mon travail, cependant je butte sur un pb...

mon aplication me permet de mettre en forme un tableau et de le sauvegarder.

mais lorsque j'enregistre le fichier avec ma macro, ça prend environ 2 min (120 secondes !!) pour avoir au final un fichier de 175 Mo !

ce qui n'est pas normal du tout !! si je n'utilise pas ma macro pour enregistrer le fichier en automatique et que je le fais manuellement via le menu fichier, enregistrer sous ça prends 10 à 15 secondes pour un fichier de moins de 100 Ko !!!!

De plus, n'etant qu'un simple debuttant en VB, je doute que mon code soit vraiment propre donc si il y a des ameliorations possibles, merci de me les indiquer..

j'ai du mettre le fichier ici car il est trop volumineux :(

http://dl.free.fr/fJfXdQWi3

J'espere que vous pourrez m'aider

bonne soirée.
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : Macro qui génére un fichier enorme ??

Bonsoir assniok, Jean-Marcel raleur (comme moi),

Ouvert ton truc, rempli les questions et le fichier a disparu..... à la validation...

Est-ce mon post ou ton fichier... pour l'instant je ne sais.

Je n'ai rien perdu des fichiers ouverts, c'est déjà cela....

Je reviens dés que je peux.

Jean-Pierre
 

Paritec

XLDnaute Barbatruc
Re : Macro qui génére un fichier enorme ??

Bonsoir Jean marcel assniok tous
pourquoi tu veux copier le tableau et pas copier simplement la feuille ou est le tableau?
enfin j'y sui peut-être pas?
Comme hier ou le titre du post c'est "comment fermer un fichier et que je réponds"
Thiswoorkbook.close !!!!!
Alors je pense que tu veux copier une feuille à un autre endroit sans macros, alors voilà:
c'est pas de moi mais de Kjin
a+
papou

Sub Copie_sans_macro()
Dim NewClas As String
Application.ScreenUpdating = False
NewClas = Sheets("Feuil2").Range("B1").Value & " " & Format(Date, "yymmdd") 'Nom du Nouveau Classeur
Fichdep = ActiveWorkbook.Name
FichDest = NewClas & ".xls"
Workbooks.Add
ActiveWorkbook.SaveAs ActiveWorkbook.Path & FichDest
Workbooks(Fichdep).Sheets("Feuil2").Cells.Copy
Workbooks(FichDest).Sheets("Feuil1").Range("A1").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub
 

assniok

XLDnaute Occasionnel
Re : Macro qui génére un fichier enorme ??

Ha je viens de me rendre compte que j'ai également oublier de préciser qu'il fallait modifier le module 4 pour mettre un Path correct pour l'enregistrement du fichier... si non, et c'est ce qui as du se passer, ça enregistre le fichier et ça ferme les classeurs ouverts...

et comme je débute c'est sûrement très mal codé puisque que ne sachant pas faire certaines choses je shint des messages d'erreurs etc...

merci pour votre aide
 

assniok

XLDnaute Occasionnel
Re : Macro qui génére un fichier enorme ??

Et bien ce n'est pas facile a expliquer mais je me lance...

Je souhaite a partir d'un tableau donné (celui qui contient les données en colonne H et I) et un formulaire (qui est dans la USF) creer un fichier .dbf (tybe IV dbf 4)

ce fichier est une sorte de base de données.

Cette application doit etre simple et intuitive car utilisé par la suite par des personnes a handicap léger.

donc la personne doit suivre ce qui est indiqué dans la case instruction pour ouvrir un fichier via la liste d'un répertoire precis et remplir le formulaire pour générer le fichier final...

une autre solution serait de générer entièrement un nouveau fichier...

et il faut que tout se ferme tout seul a la fin, sauf excel, ou la je voudrais avoir un message demandant confirmation avant de fermer (des fois qu'un autre fichier perso par exemple soit ouvert avant l'utilisation de l'application)

et si vous avez d'autres questions n'hésitez pas :)
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : Macro qui génére un fichier enorme ??

Re,

Evite ces volontés de vouloir tout fermer, cela ne rime à rien.

Fermer ton fichier, si tu veux, mais pas le reste...

Je me suis fait avoir tout à l'heure sur ton fichier... Heureusement que j'ai bonne humeur ce soir...
 

jeanpierre

Nous a quitté
Repose en paix
Re : Macro qui génére un fichier enorme ??

Re,

Pour Jean-Marcel, oui je râle de temps en temps.... ça arrive...

Pour juju 69, la vague de froid je l'avais commandé au pêre Noel, c'est fantastique, c'est la première fois que j'ai un beau cadeau.
 

jeanpierre

Nous a quitté
Repose en paix
Re : Macro qui génére un fichier enorme ??

Re,

Vrai ce que tu dis, mais redépose un fichier un peu plus propre, sans truc qui supprime, etc...

Tu expliques à côté (zone texte) ce que tu veux... Pour l'instant je suis froid à travailler sur ton premier fichier.... (voir plus avant)

Bonne nuit bientôt.

Jean-Pierre
 

assniok

XLDnaute Occasionnel
Re : Macro qui génére un fichier enorme ??

voici un fichier un peu plus propre...

j'ai supprimé tout ce qui n'etait plus utile ainsi que la fermeture des fichiers...

j'ai egalement indiqué ce que je souhaitait sur la premiere page (index) mais je le repete ici : enregistrer l'onglet final en tant que fichier .dbf 4 a un endroit precis et avec un nom precis.

je rappel egalement que je suis novice et que je n'ai pas pu nettoyer le code a proprement dit... désolé... mais je veux bien de l'aide pour le faire (conseils, guide, tuto...)

il faut renomer le fichier en etiquettes auto.xls pour que ça fonctionne.
mon fichier un peu plus propre
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 651
Messages
2 111 555
Membres
111 201
dernier inscrit
netcam