récemment je travaille sur une application dans vba qui s'appuie sur certains fichiers qui sont contenus dans le fichier .docm du document lui-même. Initialement, j'utilisais la fonctionnalité du dossier compressé Windows XP pour extraire par programme le contenu du docm. C'était une solution optimale car elle est intégrée dans tout Windows XP sur lequel elle sera utilisée et donc aucune installation requise. Cependant, j'ai rencontré un problème: il semble qu'après avoir extrait le docm un certain nombre de fois, il commence à dire "Erreur, ce fichier existe déjà". Au début, je pensais que j'avais cassé quelque chose et creusé un peu plus profond, il s'est avéré qu'il n'y avait pas de bogue dans mon code, mais plutôt un bug dans Compressed Folder. Si l'erreur "File Already Exists" apparaît sur un fichier zip de votre système, Compressed Folder ne fonctionne plus sur TOUT fichier du même nom, si vous le renommez, il recommence à fonctionner. Donc, voici ma question: Comment puis-je mettre en œuvre la capacité de fermeture à glissière dans VBA sans dossiers compressés? Question bonus: Comment puis-je réparer les dossiers compressés?Comment implémenter la fonctionnalité Zip dans VBA?
Merci pour votre temps.
-Seamus
Mise à jour: Actuellement je l'ai travail à l'aide des dossiers compressés, je travaille autour du bug en renommant le fichier à quelque chose de nouveau chaque fois que l'erreur se produit. Cela fonctionne bien, mais je cherche plus d'un correctif plutôt qu'un hack autour du problème.
C'est en fait ce que je suis en train de faire, mais c'est un peu insuffisant parce que je dois générer aléatoirement le nouveau nom de fichier, qui me semble mauvais. –
Un nom de fichier complètement aléatoire sent mauvais. Ne pourriez-vous pas simplement étendre le nom de fichier avec un numéro consécutif tout en recherchant un fichier déjà existant avec le nom? – DaClown