XL 2016 VBA, macro calcul manuel

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

  • cardi(1).xlsx
    13.8 KB · Affichages: 13

JM27

XLDnaute Barbatruc
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
 

JM27

XLDnaute Barbatruc
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"
 

Statistiques des forums

Discussions
312 185
Messages
2 086 018
Membres
103 094
dernier inscrit
Molinari