Comment définir les options de vérification linguistique de Word 2010
Découvrez comment configurer les options de vérification linguistique dans Word 2010 pour améliorer votre rédaction et éviter les erreurs.
VBA pour Excel 2016 est rapide, mais ce n'est pas toujours assez rapide. (Les programmes informatiques ne sont jamais assez rapides.) Continuez à lire pour découvrir quelques exemples de programmation que vous pouvez utiliser pour accélérer vos macros.
Lors de l'exécution d'une macro, vous pouvez vous asseoir et regarder toute l'action à l'écran qui se produit dans la macro. Bien que cela puisse être instructif, une fois que la macro fonctionne correctement, c'est souvent ennuyeux et peut ralentir considérablement les performances de votre macro. Heureusement, vous pouvez désactiver la mise à jour de l'écran qui se produit normalement lorsque vous exécutez une macro. Pour désactiver la mise à jour de l'écran, utilisez l'instruction suivante :
Application.ScreenUpdating = Faux
Si vous souhaitez que l'utilisateur voie ce qui se passe à tout moment pendant la macro, utilisez l'instruction suivante pour réactiver la mise à jour de l'écran :
Application.ScreenUpdating = True
Pour démontrer la différence de vitesse, exécutez cette macro simple, qui remplit une plage de nombres :
Sous-Remplissage () Dim r comme long, c comme long Dim Nombre aussi long Nombre = 0 Pour r = 1 à 50 Pour c = 1 à 50 Nombre = Nombre + 1 Cellules (r, c).Sélectionnez Cellules(r, c).Valeur = Nombre c suivant Suivant r Fin du sous-marin
Vous voyez chaque cellule sélectionnée et la valeur entrée dans les cellules. Insérez maintenant l'instruction suivante au début de la procédure et exécutez-la à nouveau :
Application.ScreenUpdating = Faux
La plage est remplie beaucoup plus rapidement et vous ne voyez le résultat que lorsque la macro est terminée et que la mise à jour de l'écran est (automatiquement) définie sur True.
Lorsque vous déboguez du code, l'exécution du programme se termine parfois quelque part au milieu sans que vous ayez réactivé la mise à jour de l'écran. Cela provoque parfois l'absence totale de réponse de la fenêtre d'application d'Excel. Le moyen de sortir de cet état gelé est simple : revenez au VBE et exécutez l'instruction suivante dans la fenêtre Exécution :
Application.ScreenUpdating = True
Si vous avez une feuille de calcul avec de nombreuses formules complexes, vous constaterez peut-être que vous pouvez accélérer considérablement les choses en définissant le mode de calcul sur manuel pendant l'exécution de votre macro. Une fois la macro terminée, redéfinissez le mode de calcul sur automatique.
L'instruction suivante définit le mode de calcul Excel sur manuel :
Application.Calculation = xlCalculationManual
Exécutez l'instruction suivante pour définir le mode de calcul sur automatique :
Application.Calculation = xlCalculationAutomatique
Si votre code utilise des cellules avec des résultats de formule, la désactivation du calcul signifie que les cellules ne seront pas recalculées, sauf si vous dites explicitement à Excel de le faire !
Comme vous le savez, une macro peut effectuer automatiquement une série d'actions. Dans de nombreux cas, vous pouvez démarrer une macro, puis passer du temps dans la salle de pause pendant qu'Excel fait son travail. Certaines opérations Excel, cependant, affichent des messages qui nécessitent une réponse humaine. Ces types de messages signifient que vous ne pouvez pas laisser Excel sans surveillance pendant qu'il exécute votre macro, à moins que vous ne connaissiez l'astuce secrète.
Vous pouvez demander à Excel de ne pas afficher ces types d'alertes lors de l'exécution d'une macro.
L'astuce secrète pour éviter ces messages d'alerte consiste à insérer l'instruction VBA suivante dans votre macro :
Application.DisplayAlerts = Faux
Excel exécute l'opération par défaut pour ces types de messages. Dans le cas de la suppression d'une feuille, l'opération par défaut est Supprimer. Si vous n'êtes pas sûr de l'opération par défaut, effectuez un test pour voir ce qui se passe.
Lorsque la procédure se termine, Excel réinitialise automatiquement la propriété DisplayAlerts sur True. Si vous devez réactiver les alertes avant la fin de la procédure, utilisez cette instruction :
Application.DisplayAlerts = True
Comme vous le savez probablement déjà, les références aux objets peuvent devenir très longues. Par exemple, une référence complète à un objet Range peut ressembler à ceci :
Classeurs ("MonLivre.xlsx").Feuilles de travail ("Feuille1") _ .Range(« Taux d'intérêt »)
Si votre macro utilise fréquemment cette plage, vous souhaiterez peut-être créer une variable objet à l'aide de la commande Définir. Par exemple, l'instruction suivante affecte cet objet Range à une variable d'objet nommée Rate :
Définir le taux = Classeurs ("MyBook.xlsx") _ .Feuilles de calcul ("Feuille1").Plage ("Taux d'intérêt")
Après avoir défini cette variable objet, vous pouvez utiliser la variable Taux plutôt que la longue référence. Par exemple, vous pouvez modifier la valeur de la cellule nommée InterestRate :
Taux.Valeur = .085
C'est beaucoup plus facile à taper que l'instruction suivante :
Classeurs ("MonLivre.xlsx").Feuilles de travail ("Feuille1"). _ Plage (« Taux d'intérêt ») = 0,085
En plus de simplifier votre codage, l'utilisation de variables objet accélère considérablement vos macros.
Vous n'avez généralement pas à vous soucier du type de données que vous affectez à une variable. Excel gère tous les détails pour vous dans les coulisses. Par exemple, si vous avez une variable nommée MyVar, vous pouvez affecter un numéro de n'importe quel type à cette variable. Vous pouvez même lui attribuer une chaîne de texte plus tard dans la procédure.
Si vous souhaitez que vos procédures s'exécutent le plus rapidement possible, indiquez à Excel quel type de données sera affecté à chacune de vos variables. C'est ce qu'on appelle la déclaration du type d'une variable.
En général, vous devez utiliser le type de données qui nécessite le plus petit nombre d'octets tout en pouvant gérer toutes les données qui lui sont affectées. Lorsque VBA travaille avec des données, la vitesse d'exécution dépend du nombre d'octets dont VBA dispose. En d'autres termes, moins les données sont utilisées, plus VBA peut accéder et manipuler les données rapidement. Une exception à cela est le type de données Integer. Si la vitesse est critique, utilisez plutôt le type de données Long.
Si vous utilisez une variable objet, vous pouvez déclarer la variable comme un type d'objet particulier. Voici un exemple :
Taux de variation en tant que plage Définir le taux = Classeurs ("MyBook.xlsx") _ .Feuilles de calcul ("Feuille1").Plage ("Taux d'intérêt")
Avez-vous besoin de définir un certain nombre de propriétés pour un objet ? Votre code s'exécute plus rapidement si vous utilisez la structure With-End With. Un avantage supplémentaire est que votre code peut être plus facile à lire.
Le code suivant n'utilise pas With-End With :
Selection.HorizontalAlignment = xlCenter Selection.VerticalAlignment = xlCenter Selection.WrapText = True Sélection.Orientation = 0 Selection.ShrinkToFit = False Selection.MergeCells = False
Voici le même code, réécrit pour utiliser With-End With :
Avec sélection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = Vrai .Orientation = 0 .ShrinkToFit = Faux .MergeCells = Faux Terminer par
Lorsque vous utilisez With-End With, assurez-vous que chaque instruction commence par un point.
Découvrez comment configurer les options de vérification linguistique dans Word 2010 pour améliorer votre rédaction et éviter les erreurs.
Découvrez comment utiliser les fonctions CONFIDENCE.NORM et CONFIDENCE.T dans Excel pour calculer des intervalles de confiance pour les moyennes de population, améliorant ainsi la prise de décision basée sur des données.
Améliorez la lisibilité de vos rapports Excel en formatant vos chiffres en milliers ou millions avec des astuces simples et efficaces pour votre audience.
Apprenez comment personnaliser vos étiquettes de données dans Excel pour un meilleur rapport. Utilisez les valeurs de votre tableau croisé dynamique efficacement.
Découvrez comment créer une application Web dans Access 2016. Apprenez les étapes essentielles pour développer votre application en ligne facilement.
Découvrez comment ajouter, répondre, afficher et supprimer des <strong>commentaires dans Microsoft Word</strong> 2019 pour optimiser votre collaboration.
Smartsheet est une plateforme de travail dynamique qui vous permet de gérer des projets, de créer des flux de travail et de collaborer avec votre équipe.
SharePoint est un système de collaboration basé sur le Web qui utilise une variété d'applications de flux de travail, des bases de données de « liste » et d'autres composants Web, ainsi que des fonctionnalités de sécurité pour donner le contrôle aux groupes professionnels qui travaillent ensemble.
Van Nien Calendar est une application d'affichage de calendrier sur votre téléphone, vous aidant à voir rapidement la date luni-solaire sur votre téléphone, organisant ainsi votre travail important.
Microsoft Outlook est une application commerciale et de productivité développée par Microsoft Corporation.