Propriété Application.DeferRecalc (Visio)

Détermine si l’application recalcule les formules de cellule lors d’une série d’actions. Lecture-écriture.

Syntaxe

expression. DeferRecalc

expressionUne variable qui représente un objetApplication.

Valeur renvoyée

Entier

Remarques

Utilisez la propriété DeferRecalc pour améliorer les performances au cours d'une série d'actions. Vous pouvez, par exemple, différer le recalcul des formules lorsque vous modifiez les formules ou les valeurs de plusieurs cellules. Lorsque la série d'actions est achevée, vous devez toujours redéfinir la propriété DeferRecalc sur la valeur qu'elle avait avant que vous la modifiez. Reportez-vous aux exemples suivants.

Si vous libérez des objets ou que vous envoyez un grand nombre de commandes à Visio alors que le recalcul est reporté, il se peut que Visio doivent, parfois, traiter sa file de recalculs en attente. Pour cette raison, soyez prudent lorsque vous définissez des formules comprises dans une portée où vous souhaiteriez reporter les recalculs. Vous ne devriez donc définir les formules que lorsque le recalcul est désactivé.

Par exemple, considérez la séquence Microsoft Visual Basic pour Applications (VBA) suivante.

Dim blsDeferCalcOriginalValue As Boolean 
blsDeferCalcOriginalValue = Application.DeferRecalc 
Application.DeferRecalc = True 
vsoShape.Cells("height").ResultIU = 12 
vsoShape.Cells("width").ResultIU = 14 
Application.DeferRecalc = blsDeferCalcOriginalValue 

Étant donné que VBA génère et libère un objet Cell temporaire dans le code précédent, Visio génère sa file d'attente à cet instant.

Dans la séquence suivante, Visio ne génère pas sa file de recalcul tant que l'application n'active pas de nouveau le recalcul (ou que l'utilisateur effectue une opération).

Dim blsDeferCalcOriginalValue As Boolean 
blsDeferCalcOriginalValue = Application.DeferRecalc 
Application.DeferRecalc = True 
Set vsoCell1 = vsoShape.Cells("Height") 
Set vsoCell2 = vsoShape.Cells("Width") 
vsoCell1.ResultIU = 12 
vsoCell2.ResultIU = 14 
Application.DeferRecalc = blsDeferCalcOriginalValue 

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.