Macro de mise à zéro

Hello,

J'ai un classeur avec deux feuilles

La première contient des boutons activex

La seconde des prix.

J'ai une macro qui me permet de décocher tous les boutons j'aimerais en plus que cette macro mette à zero deux cellules dans la seconde feuille.

Voici la macro pour décocher:

Sub decoche_tout()

Dim form As OLEObject

For Each form In ActiveSheet.OLEObjects

If TypeOf form.Object Is MSForms.CheckBox Then form.Object = False

Next form

End Sub

J'ai trouvé ça sur le net (je ne pige rien de ce qui est écrit )

Il faudrait mettre à zero les cellule V10 et V15 de la feuille "Prix"

Il faut savoir que ces deux cellules augment via un bouton activeX toupie qui ne se met pas à zéro via la macro décoche tout (ce qui est logique)

En pièce jointe l'exemple.

Merci à vous tous

8test.xlsm (153.73 Ko)

Bonjour,

A tester avec un nouveau code qui efface les cellules V10 et V15 de la feuille "Prix", ce code est placé dans le module1du VBA

sous macro1

Pourquoi le 1er code est-il placé dans le module de la feuille ?

Amicalement

Pierrot

10test-nowhereman.xlsm (155.56 Ko)

Pourquoi le 1er code est-il placé dans le module de la feuille ?

Amicalement

Pierrot[/quote]

Heu, je n'ai pas compris la question, comme tu vois je ne maîtrise pas vraiment les macros

Par contre merci, cela fonctionne très bien mais serait-il possible de l'inclure dans le bouton RESET du fichier j'aimerai que tout se fasse en un clic? J'ai essayé de faire un copier-colle mais cela aurait été trop simple

Si c'est possible

D'avance merci

Re-bonjour,

J'ai transféré ta 1ère macro de le feuille vers le module 1,

maintenant les deux macros vont s'exécuter l'une à la suite de l'autre

resolu4

Pierrot

Cappe Pierre a écrit :

Re-bonjour,

J'ai transféré ta 1ère macro de le feuille vers le module 1,

maintenant les deux macros vont s'exécuter l'une à la suite de l'autre

Pierrot

C'est magnifique, ça fonctionne mais j'ai un soucis j'ai fait un copier-coller du code dans mon fichier original et j'ai une erreur 400 qui apparait pour l'exécution de la seconde partie du code

C'est bon j'ai recommencé

Un grand merci, je suis tjs épaté par la connaissance des experts en excel

Copie ce code modifié dans le module 1 et n'oublies pas

d'affecter le bouton à la macro

l'erreur 400 vient du fait que l'on affiche une feuille déjà visible

(feuille prix supprimée dans le code)

bouton droit de la souris et affecter une macro

Pierrot

Sub decoche_tout()
Dim form As OLEObject
    For Each form In ActiveSheet.OLEObjects
        If TypeOf form.Object Is MSForms.CheckBox Then form.Object = False
    Next form
      Sheets("Prix").Select
    Range("V10").Select
    Selection.ClearContents
    Range("V15").Select
    Selection.ClearContents
    Sheets("Feuil1").Select

    Range("A1").Select
End Sub
Cappe Pierre a écrit :

Copie ce code modifié dans le module 1 et n'oublies pas

d'affecter le bouton à la macro

l'erreur 400 vient du fait que l'on affiche une feuille déjà visible

(feuille prix supprimée dans le code)

bouton droit de la souris et affecter une macro

Pierrot

Sub decoche_tout()
Dim form As OLEObject
    For Each form In ActiveSheet.OLEObjects
        If TypeOf form.Object Is MSForms.CheckBox Then form.Object = False
    Next form
      Sheets("Prix").Select
    Range("V10").Select
    Selection.ClearContents
    Range("V15").Select
    Selection.ClearContents
    Sheets("Feuil1").Select

    Range("A1").Select
End Sub

Merci énormément!

Rechercher des sujets similaires à "macro mise zero"