Macro pour modifier une macro

Bonjour tout le monde !

je passe d'un excel 32bits à 64bits à mon taf. Du coup, j'ai un souci dans un fichier contenant beaucoup de macro car je dois ajouter à chaque "declare" de mon code vba le mot "ptrsafe". Sans quoi, le fichier ne fonctionne plus

le souci est que cette modif va affecter tous les utilisateurs de mon entreprise, et que je suis le seul à savoir ouvrir le vba. Donc si je fais un mode d'emploi, les utilisateurs vont avoir peur d'ouvrir l'éditeur vba

Il s'agit d'un fichier qui est créé pour chacun de nos clients et pour chaque année, sachant que nous avons environ 600 clients, je ne vais pas m'amuser à passer manuellement sur chaque fichier...

donc ma question est de savoir s'il est possible de créer une macro pour modifier le code vba

la macro dirait "pour chaque "declare" que tu rencontres, tu le remplace par "declare ptrsafe"

de cette maniere, chacun lancerait la macro (ça, tout le monde sait faire)

voila voila

un grand merci pour celles et ceux qui pourront m'aider

julien

Bonsoir,

As-tu une raison particulière justifiant de passer à une version 64 bits d'Excel ?

C'est la première question à se poser, car sans raison impérative on a intérêt à travailler sur une version 32 bits (normale donc ! ) d'Excel.

La 2e question que je me pose est que si tu as dans ton fichier un nombre de déclarations d'API justifiant une telle automatisation (une bonne centaine quoi ! ou au moins plusieurs dizaines) cela aurait tendance à m'effrayer quelque peu, et je crois bien qu'une prudence élémentaire me conduirait à refuser d'ouvrir ton fichier !...

Enfin, la modification à opérer ne se borne pas à introduire PtrSafe ! Il faut également modifier tous les types de variables Long en LongPtr, et à peu près sûrement aussi maintenir les deux déclarations sous condition de la version de VBA (VBA7 ou versions antérieures).

Sans parler de la présence d'autres éléments incompatibles avec une version 64 bits...

Le premier conseil, serait donc de réinstaller une version 32 bits !

Si une entreprise peut justifier d'un besoin 64 bits pour unf fonction particulière, je conseillerais de limiter le 64 bits à ladite fonction, et continuer avec du 32 bits pour tous autres travaux !

Cordialement.

Salut, merci de ta réponse !

Sur le principe, je suis totalement d'accord avec toi... mais nous changeons d'infogerance et la migration, non contents de nous faire revenir sur Windows 7, nous impose un Excel 2013 en 64bits (nous étions en Excel 2010 32 bits jusqu ici)... donc je n'ai aucun choix à ce sujet...

Le code vba ne contient que 3 "déclare", j'en suis certain car je peux le faire manuellement, et quand c'est fait, le fichier fonctionne correctement

Il n'y a pas d'autre modif à faire sur le fichier pour que tout fonctionne bien

Si tout ca n'avait tenu qu'à moi...

Rechercher des sujets similaires à "macro modifier"