Re : comment creer un formulaire simple
Pour passer en mode de calcul manuel,
Menu Fichier du ruban ou le gros bouton office dans le coin supérieur gauche de l'application Excel selon la version d'Excel que tu utilises, Options Excel / Formules / et tu actives dans la section "Calcul du classeur" le bouton radio "Manuel". Dès que tu fermes la fenêtre, les formules du classeur ne se mettent plus à jour lorsque tu entres une nouvelle donnée. Pour les mettre à jour, tu dois utiliser le raccourci clavier "Touche F9".
Cependant, comme la problématique est vécue particulièrement seulement sur une feuille qui contient beaucoup de formules, le petit bout de code que je t'ai donné permet de faire passer Excel en mode de calcul manuel seulement lorsque c'est la feuille contenant des formules qui est active et sur laquelle tu travailles. Dès que tu sélectionnes un autre onglet de la feuille, Excel revient en mode de calcul automatique.
Pour copier la macro, tu dois ouvrir l'éditeur de code (VBA), pour ce faire, tu as un raccourci clavier : alt + F11
Lorsque la fenêtre est ouverte, dans la petite fenêtre de gauche appelée "projet - VBAProject", tu sélectionnes le VBAProject(Nom de ton classeur). Si tu cliques sur le petit "+" à gauche du nom de ton projetVBA, tu vas ouvrir l'arborescence des objets VBA que contient ton projet. C'est dans cette arborescence que se trouve le module "ThisWorkbook". Tu fais un double-clique sur cet objet et à droite de la fenêtre, tu as la grande feuille blanche qui représente le module ThisWorkbook. Tu n'as qu'à y copier le code que je t'ai donné.
Important : Dans le code, j'ai utilisé le nom de l'onglet feuille "Feuil1". Si le nom de l'onglet de ta feuille porte un autre nom, remplace "Feuil1" par le nom dudit onglet.
Et tant qu'à y être, copie tout ce code dans le ThisWorkbook
Je le répète, tu dois adapter le nom de la feuille ici dans le code :
If LCase(Sh.Name) = "feuil1" Then
'------------------------------------------------------------------
Private Sub Workbook_Activate()
Workbook_SheetChange ActiveSheet, ActiveCell
End Sub
'------------------------------------------------------------------
Private Sub Workbook_Deactivate()
Application.Calculation = xlCalculationAutomatic
End Sub
'------------------------------------------------------------------
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Remplace "Feuil1" par le nom de l'onglet où sont tes formules.
'écris le nom de l'onglet tout en lettre minuscule
If LCase(Sh.Name) = "feuil1" Then
Application.Calculation = xlCalculationManual
Else
Application.Calculation = xlCalculationAutomatic
End If
End Sub
'------------------------------------------------------------------