Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Downgrade macro Excel 2010 vers 2000

  • Initiateur de la discussion Initiateur de la discussion John38
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

John38

XLDnaute Nouveau
Bonjour,

J'ai créer un fichier sur Excel 2010 comportant des macros. Le problème c'est que dans mon entreprise, il existe deux versions d'Excel le 2010 et le 2000. Je voulais savoir si il existait un logiciel permettant de convertir mes macros ?

Je vous remercie par avance de vos réponses.
 
Re : Downgrade macro Excel 2010 vers 2000

Bonjour,

Je ne pense pas qu'il existe ce genre de logiciel. Cependant, une macro peut être adaptée pour fonctionner sur toutes versions [avec une nuance pour Excel97 qui commence à se faire vraiment vieux...].
Si tu le souhaites, nous pouvons peut être te faire cela. Pour ça, il nous faut, à minima, le code de ta(tes) macro(s) ainsi que les quelques lignes qui bloquent.
Cordialement,
Franck
 
Re : Downgrade macro Excel 2010 vers 2000

Mais par contre je ne peux pas vous envoyer le fichier.
Je comprends. S'il y a des éléments confidentiels (nombreux) il n'est pas toujours aisé de les remplacer.

Sa serait bon ?
Sans voir, je ne peux pas te promettre.
Par contre, on va au moins essayer avec tous les éléments dont nous pourrons disposer.

Je peux vous copier les macros et ce qui bloquent
Vas y envoie, on verra bien!
 
Re : Downgrade macro Excel 2010 vers 2000


Sa commence à buger là
 
Re : Downgrade macro Excel 2010 vers 2000

Bon... Et bien on n'est pas sorti du sable... (je plaisante).

1- TintAndShade = 0 ==> ligne inutile, on supprime !
Extrait de l'aide VBA pour cette propriété :
Cette propriété renvoie ou définit un objet de type Single qui éclaircit ou assombrit la couleur d'une forme spécifiée. En lecture-écriture.
expression.TintAndShade
expression Obligatoire. Expression qui renvoie un des objets répertoriés dans la liste S'applique à.
Note
Vous pouvez entrer un nombre compris entre -1 (le plus sombre) et 1 (le plus clair) pour la propriété TintAndShade, 0 (zéro) étant neutre
.

Tous tes select sont inutiles. J'ai déjà commencé à simplifier ton code :

Code:
Option Explicit

Sub pieces_generales()
'
Sheets("Piece detachees").Select
With Sheets("Calculs")
    .Range("A17:E67").ClearContents
    Sheets("Piece detachees").Range("A2:A52").Copy
    .Range("E17").PasteSpecial Paste:=xlPasteValues
    Sheets("Piece detachees").Range("B2:B52").Copy
    .Range("A17").PasteSpecial Paste:=xlPasteValues
    Sheets("Piece detachees").Range("E2:E52").Copy
    .Range("B17").PasteSpecial Paste:=xlPasteValues
    Sheets("Piece detachees").Range("G2:G52").Copy
    .Range("C17").PasteSpecial Paste:=xlPasteValues
    Sheets("Piece detachees").Range("I2:I52").Copy
    .Range("D17").PasteSpecial Paste:=xlPasteValues
    With .Range("A17:D56")
        .Borders(xlDiagonalDown).LineStyle = xlNone
        .Borders(xlDiagonalUp).LineStyle = xlNone
        .Borders(xlEdgeLeft).LineStyle = xlContinuous
        .Borders(xlEdgeLeft).Weight = xlThin
        .Borders(xlEdgeTop).LineStyle = xlContinuous
        .Borders(xlEdgeTop).Weight = xlThin
        .Borders(xlEdgeBottom).LineStyle = xlContinuous
        .Borders(xlEdgeBottom).Weight = xlThin
        .Borders(xlEdgeRight).LineStyle = xlContinuous
        .Borders(xlEdgeRight).Weight = xlThin
        .Borders(xlInsideVertical).LineStyle = xlContinuous
        .Borders(xlInsideVertical).Weight = xlThin
        .Borders(xlInsideHorizontal).LineStyle = xlContinuous
        .Borders(xlInsideHorizontal).Weight = xlThin
    End With
    With .Range("B17:D36")
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
End With
Sheets("Piece detachees").Select
Range("A1").Select
Sheets("Calculs").Select
Range("A15").Select
End Sub
Essaye pour voir.
 
Re : Downgrade macro Excel 2010 vers 2000

Je te remercie tout marche correctement, j'ai enlevé pour mes autres macros Tintandshade et elle marche. Je me demandais si sa sert par à grand chose cette fonction...je peux l'enlever de mon fichier version 2010 non ?
 
Dernière édition:
Re : Downgrade macro Excel 2010 vers 2000

J'ai une autre question, j'avais créer une macro qui enregistrait certaines pages sous .pdf. Sur excel 2000, il me semble que c'est impossible car il gère par les pdf non ?
 
Re : Downgrade macro Excel 2010 vers 2000

En revanche j'ai quelques bugs sur mes fonctions comme Somme.si.ens ou nb.si.ens
Ben oui... Ces formules n'existent que depuis la version 2007... Tu pourrais peut être les remplacer, Somme.Si.Ens par exemple peut être remplacée par une formule SOMMEPROD()

j'avais créer une macro qui enregistrait certaines pages sous .pdf. Sur excel 2000, il me semble que c'est impossible car il gère par les pdf non ?
Pas nécessairement. Il y a deux manières d'enregistrer en pdf. Soit directement grâce aux versions récentes d'Excel, soit en utilisant une imprimante pdf virtuelle.
Par exemple, ce code de macro fonctionne avec les deux versions excel :
Code:
Sub SavePageEnCoursEnPdf()
Dim Imprimante
Imprimante = Application.ActivePrinter
Application.ActivePrinter = "Adobe PDF sur Ne38:" 'A ADAPTER SELON VOTRE IMPRIMANTE PDF
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Application.ActivePrinter = Imprimante
End Sub
 
Re : Downgrade macro Excel 2010 vers 2000

Le problème du SOMMEPROD() il me semble qu'on peut addtionner que gauche à droite.
Moi je dois faire une formule de ce genre =SOMMEPROD(($D$2:$D$132="lulu")*($M$2:$M$132="bubu")*($H$2:$H$132))
Vue que je passe par la colonne D puis M et je reviens par H, Excel comprend pas.

Je viens de me rendre compte qu'une macro marchait mal, elle s'excute sans mettre d'erreur.
J'ai 3 fichiers excel extrait d'un logiciel et je récupère ces informations sur mon fichier excel principal pour calculer. J'ai fait une feuille par extraction. J'ai créé une macro qui commence à suprimer les antécédents sauf les cases A1 à G1, puis je tire de A1 à G477.

Le problème c'est que j'ai l'impression que les données précédentes ne se sont pas supprimées car elles sont encore là. Pourtant, quand je tire moi même sa fait la même chose. J'ai bien vérifié mes fichiers sources, ces données ne sont pas présentes.

Mon code :

 
Re : Downgrade macro Excel 2010 vers 2000

Le problème du SOMMEPROD() il me semble qu'on peut addtionner que gauche à droite.
Moi je dois faire une formule de ce genre =SOMMEPROD(($D$2:$D$132="lulu")*($M$2:$M$132="bubu ")*($H$2:$H$132))
Vue que je passe par la colonne D puis M et je reviens par H, Excel comprend pas.

Pas de souci, Excel comprends très bien et va te donner le résultat attendu. T'inquiète...

Le problème c'est que j'ai l'impression que les données précédentes ne se sont pas supprimées car elles sont encore là
Soluce 1 :
Ratisse plus large :
Code:
Sub Extraction_******()
Sheets("*****").Range("A2:Z5000").ClearContents
Range("A1").AutoFill Destination:=Range("A1:G1"), Type:=xlFillDefault
Range("A1:G1").AutoFill Destination:=Range("A1:G477"), Type:=xlFillDefault
Range("A1").Select
End Sub
Soluce 2 :
Soit plus "violent" :
Code:
Range("A2:G477").Delete Shift:=xlUp
ou
Code:
Sheets("*****").Range("A2:G477").Clear
Soluce 3 :
Mélange les soluces 1 & 2 :
Code:
Sheets("*****").Range("A2:Z5000").Clear
 
Re : Downgrade macro Excel 2010 vers 2000

Pour ce qui est de somme prod il me donne N/A sur l'exemple que j'ai donné. Je vois pas d'où peut venir l'erreur.

Les lignes nouvelles lignes de code pour effacer ne changent rien. On dirait comme si il y avait des choses invisibles écrites sur les fichiers que je récupère. Même à la main sa fait la même chose. Pourtant dans le 2010 sa fonctionne correctement.
 
Dernière édition:
Re : Downgrade macro Excel 2010 vers 2000

1- pour les #N/A : Ce lien n'existe plus

2- Les lignes nouvelles lignes de code pour effacer ne changent rien. On dirait comme si il y avait des choses invisibles écrites sur les fichiers que je récupère. Même à la main sa fait la même chose. Pourtant dans le 2010 sa fonctionne correctement.
Là malheureusement, sans un exemple de fichier, je ne peux rien...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
130
Réponses
134
Affichages
4 K
Réponses
16
Affichages
1 K
Réponses
7
Affichages
667
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…