XL 2016 VBA, macro calcul manuel

  • Initiateur de la discussion Initiateur de la discussion cardi
  • 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 !

cardi

XLDnaute Junior
Bonjour,

Je souhaite créer un bouton pour activer/désactiver les calculs automatiques car j'ai un fichier assez lourd.

Je souhaite que quand je clique sur le bouton, cela active les calculs manuels et cela change le titre du bouton. Si je reclique sur ce même bouton, cela active les calculs automatiques et cela remet le titre initial du bouton.

Je joins mon 1er essai mais cela ne marche pas 🙁

VB:
Option Explicit

Sub Masque()
Dim i%

If ActiveWorkbook.ActiveSheet.Shapes("Bouton").TextFrame.Characters.Text = "AUTO" Then

   
    Application.Calculation = xlCalculationAutomatic
   
  ActiveWorkbook.ActiveSheet.Shapes("Bouton").TextFrame.Characters.Text = "MANUEL"
Else

  Application.Calculation = xlCalculationManual

  ActiveWorkbook.ActiveSheet.Shapes("Bouton").TextFrame.Characters.Text = "AUTO"
End If
End Sub

Merci d'avance pour votre aide.

Cardi
 

Pièces jointes

Bonjour

Shapes("Bouton 1")




VB:
Option Explicit

Sub Masque()
Dim i%

If ActiveWorkbook.ActiveSheet.Shapes("Bouton 1").TextFrame.Characters.Text = "AUTO" Then

 
    Application.Calculation = xlCalculationAutomatic
 
  ActiveWorkbook.ActiveSheet.Shapes("Bouton 1").TextFrame.Characters.Text = "MANUEL"
Else

  Application.Calculation = xlCalculationManual

  ActiveWorkbook.ActiveSheet.Shapes("Bouton 1").TextFrame.Characters.Text = "AUTO"
End If
End Sub
 
bonjour
dans la macro événementielle
VB:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ActiveWorkbook.ActiveSheet.Shapes("Bouton 1").TextFrame.Characters.Text = "MANUEL"
Application.Calculation = xlCalculationAutomatic
End Sub

attention il faut que tu sois sur la feuille qui comporte le bouton 1
sinon, il faut changer la ligne

ActiveWorkbook.ActiveSheet.Shapes("Bouton 1").TextFrame.Characters.Text = "MANUEL"
par

ActiveWorkbook.sheets("Nom de la feuille").Shapes("Bouton 1").TextFrame.Characters.Text = "MANUEL"

bien entendu il faut changer "Nom de la feuille"
 
- 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
2
Affichages
1 K
Réponses
8
Affichages
1 K
Réponses
6
Affichages
1 K
Retour