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

Formules hors service

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

Lipadec

XLDnaute Occasionnel
Bonjour le Forum
J'ai un fichier plein de formules, et je cherche une macro qui va stopper le fonctionnement de toutes ces formules à une date précise, exemple le 01/07/2009.
Merci de votre aide

Lipadec
 
Re : Formules hors service

Bonjour lipadec,
Code:
' tester si la date est dépassée
if ...................... then
    With Application
        .Calculation = xlManual
        .CalculateBeforeSave = False
    End With

End If

pour empêcher le calcul automatique

bon week-end
 
Re : Formules hors service

Bonjour,
Je ne sais pas ce que veut dire stopper le fonctionnement des formules
Soit tu passes en mode calcul manuel (sur ordre), soit tu remplaces les formules par la valeur actuelle (les formules sont perdues)
En outre, est ce valable pour l'ensemble du classeur ou juste certaines feuilles ?
Code:
Sub Macro1()
Dim Sh As Worksheet, Cel As Range
For Each Sh In ActiveWorkbook.Sheets
    If CStr(Date) = "01/07/2009" Then
        'remplace les formules par leur valeur
        For Each Cel In Sh.UsedRange
            If Cel.HasFormula = True Then Cel.Value = Cel.Value
        Next
        'sinon passe en mode calcul manuel
'        With Application
'            .Calculation = xlManual
'            .CalculateBeforeSave = False
'        End With
    End If
Next

End Sub
A+
kjin
 
Re : Formules hors service

Merci à tous
Stopper le fonctionnement des formules c'est excatement passer en mode calcul manueln et c'est ce que je veux, et pour tout le classeur.
Merci
 
Re : Formules hors service

Re, bonjour PHLaurent,
Alors il suffit de supprimer la première partie du code
Code:
Private Sub Workbook_Open()
Dim Sh As Worksheet, Cel As Range
If CStr(Date) = "01/07/2009" Then
    For Each Sh In ActiveWorkbook.Sheets
            With Application
                .Calculation = xlManual
                .CalculateBeforeSave = False
            End With
    Next
End If

End Sub
Edit : a mettre dans le module de ThisWorkBook
A+
kjin
 
Dernière édition:
Re : Formules hors service

Bonjour à tous
Une solution radicale :
Code:
Private Sub Workbook_Open()
Dim oFeuil
   If Now() > DateSerial(2009, 7, 1) Then
      For Each oFeuil In ThisWorkbook.Sheets
         oFeuil.Cells.Copy
         oFeuil.[A1].PasteSpecial Paste:=xlPasteValues
         Application.CutCopyMode = False
      Next oFeuil
   End If
End Sub
et toutes les formules sont effacées...
A TESTER PRUDEMMENT !
ROGER2327
 
Re : Formules hors service

Re tout le monde

Je viens de faire un essaie avec le code de ROGER2327, en applicant la date de demain, j'ai fermé le classeur, j'ai changer la date de l'oedinateur, et quand j'ai réouvert le classeur en question, rien n'a été changé
Où est le problème?

Merci
 
Re : Formules hors service

Re, bonjour Roger,
Mr Roger, il n'y a point besoin de copier/coller la cellule sur elle-même mais juste de remplacer la formule par son résultat, objet de mon message #4
Enfin, il me semble...

Mr Lipadec, où as tu mis le code ? voir mon dernier message.
En outre, tu veux maintenant effacer les formules, je n'y comprends plus rien (voir ton messge #5)

A+
kjin
 
Dernière édition:
Re : Formules hors service

Re...
Mr Roger, il n'y a point besoin de copier/coller la cellule sur elle-même mais juste de remplacer la formule par son résultat, objet de mon message #4
Enfin, il me semble...
Ben oui Mister kjin.
Code:
        For Each Cel In Sh.UsedRange
            If Cel.HasFormula = True Then Cel.Value = Cel.Value
        Next
et
Code:
         oFeuil.Cells.Copy
         oFeuil.[A1].PasteSpecial Paste:=xlPasteValues
doivent amener pratiquement au même résultat. (Peut-être pas à la même vitesse.)​
ROGER2327
 
Re : Formules hors service

Re, à tous
le problème est que nous ne sommes pas encore demain ..................même à la maison blanche lol 😀

tu as peut-être oublier de valider le changement de date car chez moi ça a fonctionné
 
- 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
5
Affichages
215
Réponses
9
Affichages
272
  • Question Question
Microsoft 365 Formule Outlook,
Réponses
8
Affichages
353
Réponses
9
Affichages
509
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…