Accueil Médias sociaux Excel 2016 VBA Speed ​​Tips - dummies

Excel 2016 VBA Speed ​​Tips - dummies

Table des matières:

Vidéo: 6 Ways to Speed up your Excel Macros 2025

Vidéo: 6 Ways to Speed up your Excel Macros 2025
Anonim

VBA pour Excel 2016 est rapide, mais pas toujours 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.

Désactivation de la mise à jour de l'écran

Lors de l'exécution d'une macro, vous pouvez vous asseoir et observer toutes les actions à l'écran qui se produisent dans la macro. Bien que cela puisse être instructif, une fois que la macro fonctionne correctement, c'est souvent ennuyeux et cela peut considérablement ralentir 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 = False

Si vous souhaitez que l'utilisateur puisse voir ce qui se passe à un moment quelconque de la macro, utilisez l'instruction suivante pour réactiver la mise à jour de l'écran:

Application. ScreenUpdating = True

Pour montrer la différence de vitesse, exécutez cette macro simple, qui remplit une plage avec des nombres:

Sub FillRange () Dim r comme Long, c As Long Dim Nombre comme Long Number = 0 For r = 1 à 50 Pour c = 1 à 50 Nombre = Nombre + 1 Cellules (r, c). Sélectionnez Cellules (r, c). Value = Number Next c Next r End Sub

Vous voyez chaque cellule sélectionnée et la valeur saisie dans les cellules. Maintenant insérez l'instruction suivante au début de la procédure et exécutez-la à nouveau:

Application. ScreenUpdating = False

La plage est remplie beaucoup plus rapidement, et vous ne voyez pas le résultat tant que la macro n'est pas 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 la fenêtre d'application Excel pour devenir totalement ne répond pas. La sortie de cet état figé est simple: Revenez au VBE et exécutez l'instruction suivante dans la fenêtre Exécution:

Application. ScreenUpdating = True

Désactiver le calcul automatique

Si vous avez une feuille de calcul contenant de nombreuses formules complexes, vous pouvez constater que vous pouvez accélérer considérablement les choses en définissant le mode de calcul sur manual pendant l'exécution de votre macro. Lorsque la macro se termine, redéfinissez le mode de calcul sur Automatique.

L'instruction suivante définit le mode de calcul Excel sur manual:

Application. Calculation = xlCalculationManual

Exécute l'instruction suivante pour mettre le mode de calcul à automatique:

Application. Calcul = xlCalculationAutomatic

Si votre code utilise des cellules avec des résultats de formule, désactiver le calcul signifie que les cellules ne seront pas recalculées à moins que vous n'ayez explicitement dit à Excel de le faire!

Éliminer ces messages d'alerte agaçants

Comme vous le savez, une macro peut automatiquement effectuer une série d'actions. Dans la plupart des 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, sauf si vous connaissez 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 = False

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.

Une fois la procédure terminée, 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

Simplifier les références d'objet

Comme vous le savez probablement déjà, les références aux objets peuvent devenir très longues. Par exemple, une référence entièrement qualifiée à un objet Range peut ressembler à ceci:

Workbooks ("MyBook.xlsx"). Feuilles de travail ("Sheet1") _. Range ("InterestRate")

Si votre macro utilise fréquemment cette plage, vous pouvez créer une variable d'objet à l'aide de la commande Set. Par exemple, l'instruction suivante affecte cet objet Range à une variable d'objet nommée Rate:

Set Rate = Workbooks ("MyBook.xlsx") _. Feuilles de travail ("Sheet1"). Range ("InterestRate")

Après avoir défini cette variable d'objet, vous pouvez utiliser la variable Rate plutôt que la référence longue. Par exemple, vous pouvez modifier la valeur de la cellule nommée InterestRate:

Rate. Valeur =. 085

Ceci est beaucoup plus facile à taper que la déclaration suivante:

Workbooks ("MyBook.xlsx"). Feuilles de travail ("Sheet1"). _ Range ("InterestRate") =. 085

En plus de simplifier votre codage, l'utilisation de variables d'objet accélère considérablement vos macros.

Déclaration des types de variables

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 assigner un nombre de n'importe quel type à cette variable. Vous pouvez même lui affecter une chaîne de texte plus tard dans la procédure.

Si vous voulez que vos procédures s'exécutent le plus rapidement possible, dites à Excel quel type de données sera affecté à chacune de vos variables. Ceci est connu comme déclarant le 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 que VBA a à sa disposition. En d'autres termes, plus la quantité de données utilisées est faible, plus la VBA peut accéder et manipuler les données plus rapidement.Une exception à ceci 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 d'objet, vous pouvez déclarer la variable comme un type d'objet particulier. Voici un exemple:

Dim Rate as Range Set Rate = Classeurs ("MyBook.xlsx") _. Feuilles de travail ("Sheet1"). Range ("InterestRate")

Utilisation de With-End With structure

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 = Sélection de xlCenter. VerticalAlignment = Sélection de xlCenter. WrapText = Sélection vraie. Orientation = 0 Sélection. ShrinkToFit = Fausse sélection. MergeCells = False

Voici le même code, réécrit pour utiliser With-End With:

With Selection. HorizontalAlignment = xlCenter. VerticalAlignment = xlCenter. WrapText = Vrai. Orientation = 0. ShrinkToFit = Faux. MergeCells = False End With

Lorsque vous utilisez With-End With, assurez-vous que chaque instruction commence par un point.

Excel 2016 VBA Speed ​​Tips - dummies

Le choix des éditeurs

Planifier à l'avance pour vos retouches de films sur le reflex numérique

Planifier à l'avance pour vos retouches de films sur le reflex numérique

En prenant quelques mesures simples pouvez planifier votre montage avant votre tournage de film numérique, afin de ne pas vous retrouver dans une situation difficile plus tard. Les listes de coups sont essentielles pour s'assurer que vous obtenez tout ce dont vous avez besoin pour votre besoin de film. Cela inclut un large éventail de prises de vue, de variations ...

Comment enregistrer et importer des vidéos pour votre film numérique - Les tétines

Comment enregistrer et importer des vidéos pour votre film numérique - Les tétines

Vous n'avez qu'à appuyer sur Enregistrer, à droite ? Faire votre film numérique n'est pas aussi simple que ça. Prends ton temps. Il est important de ne pas se précipiter lors de la configuration de votre appareil photo. Se précipiter peut mener à des erreurs. C'est une bonne idée de s'assurer que tout est réglé avant d'appeler les acteurs. Si ils arrivent tôt, ...

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Comment envoyer une vidéo et des photos avec Flip Video - Dummies

Après avoir pris photos et vidéos d'événements dans votre vie avec votre caméra Flip Video, vous pouvez les envoyer par e-mail à vos amis et aux membres de votre famille. Le partage de films et d'images que vous capturez et créez en envoyant un message e-mail vous permet de toucher et de toucher quelqu'un avec vos créations, même si vous êtes à proximité ...

Le choix des éditeurs

Spotify Paramètres de Mobile - mannequins

Spotify Paramètres de Mobile - mannequins

Touchez le bouton Paramètres en bas de l'application pour accéder à la page Paramètres Spotify de votre mobile dispositif. Ce sont des préférences utiles que vous pouvez activer ou désactiver lorsque vous voulez effectuer des réglages importants, tels que l'écoute de musique de qualité inférieure si vous êtes en déplacement et que vous ne voulez pas ...

Spotify Blogs musicaux - dummies

Spotify Blogs musicaux - dummies

La technologie ne peut que faire autant: Parfois, vous avez besoin d'un humain pour trouver les gemmes quand il s'agit de ce que Spotify a à offrir. Dieu merci, il y a beaucoup de blogs dédiés, ou des journaux en ligne, qui peuvent vous aider dans cette tâche. Beaucoup sortent tous les jours - les mots sortent rapidement, et ...

Spotify Radio and Play Queue - les mannequins

Spotify Radio and Play Queue - les mannequins

Cliquez sur l'option Spotify Radio sidebar pour ouvrir la station de radio principale Volet Spotify Dans Spotify Radio, vous pouvez écouter des pistes aléatoires des dernières décennies (et même des plus anciennes). Vous n'aimez pas une piste diffusée sur Spotify Radio? Vous pouvez simplement l'ignorer et passer à la suivante ...

Le choix des éditeurs

Atteindre les 500 millions d'utilisateurs de Facebook - les nuls

Atteindre les 500 millions d'utilisateurs de Facebook - les nuls

Avec un film nominé aux Oscars et plus de 500 millions d'utilisateurs, Le site de réseautage social qui a débuté alors que Mark Zuckerberg tentait de rendre l'annuaire de Harvard plus interactif en ligne est devenu un phénomène mondial. Quelle est la portée de Facebook ces jours-ci? Selon une étude réalisée par des chercheurs des Nations Unies, plus de gens en Indonésie savaient ce que ...

Raccourcis quarkXPress 5 pour tâches de base - mannequins

Raccourcis quarkXPress 5 pour tâches de base - mannequins

QuarkXPress 5 propose des tonnes de raccourcis. Vous ne mémoriserez probablement pas la plupart d'entre eux, mais vous vous en servirez sans doute un ou deux tout le temps. Voici quelques raccourcis utiles pour les tâches d'affichage, de palette et de sélection d'objet. Raccourcis d'affichage de QuarkXPress Action Mac Windows 100% Commande + 1 Ctrl + 1 Intégration dans Windows Commande + 0 Ctrl + 0 200% ...

Publication de fichiers sur un serveur Web avec FTP - Mannequins

Publication de fichiers sur un serveur Web avec FTP - Mannequins

Vous pouvez télécharger des pages sur votre serveur et téléchargez les pages de votre serveur à l'aide des fonctionnalités FTP intégrées de Dreamweaver. Pour transférer des fichiers entre votre disque dur et un serveur distant (après avoir configuré correctement les fonctionnalités FTP décrites dans la section précédente de ce chapitre), procédez comme suit: