Calculer la portée de déplacement, Excel VBA

Calculer la portée de déplacement, Excel VBA

Calculer la portée de déplacement en Excel VBA implique de comprendre la nature du problème et la façon dont les variables sont définies. La portée de déplacement peut avoir plusieurs significations selon le contexte (par exemple, pour des objets physiques, des véhicules, des trajectoires, etc.). 

Voici un exemple détaillé d’un code VBA pour calculer la portée de déplacement dans un contexte où la portée dépend de plusieurs paramètres, tels que la vitesse, la durée du déplacement et d’autres facteurs. L’exemple suivant suppose que vous voulez calculer la distance parcourue par un véhicule en fonction de sa vitesse moyenne et du temps de déplacement. 

Scénario : 

  • Vitesse moyenne (en km/h) 
  • Durée de déplacement (en heures) 
  • La portée de déplacement sera calculée comme :  

Portée=Vitesse × Durée × Facteur de modification 

Exemple de code VBA pour Excel : 

  1. Ouvrir l’éditeur VBA
  • Ouvrez Excel. 
  • Appuyez sur Alt + F11 pour ouvrir l’éditeur VBA. 
  • Dans l’éditeur, allez dans Insertion > Module pour créer un nouveau module. 
  1. Code VBA

Voici un exemple de code VBA pour calculer la portée de déplacement : 

Sub CalculerPorteeDeplacement() 
    ' Déclaration des variables 
    Dim vitesse As Double ' Vitesse en km/h 
    Dim duree As Double ' Durée du déplacement en heures 
    Dim portee As Double ' Portée de déplacement en km 
    ' Demander à l'utilisateur la vitesse (en km/h) 
    vitesse = InputBox("Entrez la vitesse moyenne (en km/h) :") 
    ' Vérifier si la vitesse est valide (positive) 
    If vitesse <= 0 Then 
        MsgBox "La vitesse doit être supérieure à zéro.", vbExclamation 
        Exit Sub 
    End If
    ' Demander à l'utilisateur la durée du déplacement (en heures) 
    duree = InputBox("Entrez la durée du déplacement (en heures) :")
    ' Vérifier si la durée est valide (positive) 
    If duree <= 0 Then 
        MsgBox "La durée doit être supérieure à zéro.", vbExclamation 
        Exit Sub 
    End If 
    ' Calcul de la portée 
    portee = vitesse * duree 
    ' Afficher le résultat dans une boîte de message 
    MsgBox "La portée de déplacement est : " & portee & " km", vbInformation 
End Sub

Explication du code : 

1. Déclaration des variables : 

  • vitesse: La vitesse moyenne du véhicule (en km/h). 
  • duree: La durée du déplacement (en heures). 
  • portee: La distance parcourue, calculée comme la portée de déplacement (en kilomètres). 

2. Demande des entrées : 

  • InputBox est utilisé pour demander à l’utilisateur de saisir la vitesse et la durée. 
  • Le programme vérifie si les valeurs saisies sont positives. Si la valeur est inférieure ou égale à zéro, une boîte de message s’affiche et l’exécution du code est arrêtée (Exit Sub). 

3. Calcul de la portée : 

  • La portée est calculée en multipliant la vitesse par la durée (portee = vitesse * duree). 

4. Affichage du résultat : 

  • Le résultat est affiché à l’utilisateur à l’aide de MsgBox, indiquant la portée du déplacement en kilomètres. 

Étapes pour exécuter le code : 

  1. Après avoir entré ce code dans un module VBA (en suivant les étapes mentionnées ci-dessus), vous pouvez exécuter le programme de deux manières : 
  • En appuyant sur F5 dans l’éditeur VBA pour exécuter le code. 
  • Ou bien en assignant ce code à un bouton dans votre feuille Excel via l’option « Insertion > Formes > Bouton ». 

Exemple d’utilisation : 

  • Si l’utilisateur entre une vitesse de 60 km/h et une durée de 2 heures, la portée calculée sera : 60 km/h × 2 h=120 km Le message affiché sera donc : « La portée de déplacement est : 120 km ». 

Extension : 

Ce code peut être facilement modifié pour ajouter d’autres facteurs, tels que la consommation de carburant ou des facteurs environnementaux. Par exemple, si vous devez ajouter une réduction de portée en fonction de la consommation de carburant ou de l’efficacité du véhicule, vous pouvez inclure ces calculs dans le programme. 

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x