convertisseur de macro vba excel 2003 vers excel 2010
Citation:
Envoyé par
Philippe JOCHMANS
Bonjour
Il n'existe pas de convertisseurs de macros, la compatibilité étant ascendante dans les applications Office, la plupart des macros fonctionneront sans problèmes sur Office 2010.
Cependant il peut y avoir quelques bugs qu'il faut corriger comme le souligne helas tel que des références, etc...
Philippe
bonjour,
J'ai lu cette discussion.
Etant en galère sur le même problème, et vu les réponses apportées....
Alors, non la compatibilité ascendante est loin d'être assurée, et par exemple de nombreuses macros 2003 ne tournent plus sous 2010 (-c'est mon cas).
le site support de Microsoft est très clair ; Windows update est censé téléchargé des convertisseurs VBA ; moi je les attends toujours...
Mais cela se limite à quelques DDL en général, qu'il suffit de copier dans différents répertoires.
Exemple dans mon cas :
vbacv10.dll, vbacv10d.dll: \Program Files (x86)\Common Files\Microsoft Shared\vba\vba7\
xl5en32.olb, gren50.olb: \Program Files (x86)\Microsoft Office\Office14\
vbaen32.olb, vbaend32.olb: \Windows\SysWOW64\
le tout suivi de qq coup de Regedit dans un "convertisseur" ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| @echo off
REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}\1.0 /t REG_SZ /ve /d "Visual Basic For Applications" /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}\1.0\9 /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}\1.0\FLAGS /t REG_SZ /ve /d 0 /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}\1.0 /t REG_SZ /ve /d "Visual Basic For Applications" /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}\1.0\9 /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}\1.0\FLAGS /t REG_SZ /ve /d 0 /f
IF EXIST %SystemRoot%\SysWOW64 GOTO WOW
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}\1.0\9\win32 /t REG_SZ /ve /d %SystemRoot%\System32\VBAEN32.OLB /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}\1.0\9\win32 /t REG_SZ /ve /d %SystemRoot%\System32\VBAEND32.OLB /f
GOTO EXIT
:WOW
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F3-0000-0000-C000-000000000046}\1.0\9\win32 /t REG_SZ /ve /d %SystemRoot%\SysWOW64\VBAEN32.OLB /f
IF NOT ERRORLEVEL 1 REG ADD HKEY_CLASSES_ROOT\TypeLib\{000204F1-0000-0000-C000-000000000046}\1.0\9\win32 /t REG_SZ /ve /d %SystemRoot%\SysWOW64\VBAEND32.OLB /f
:EXIT
IF ERRORLEVEL 1 ECHO VBE converter registration failed!
IF NOT ERRORLEVEL 1 ECHO VBE converter registration succeeded! |
le tout est joué.
Merci Microsoft pour la compatibilité ascendante des macros...