Monsieur Excel
Pour tout savoir faire sur Excel !

16 août 2017

Et la touche « Windows » !

La touche Windows, dont quelques exemples d’icônes sont reproduits ci-dessous, vous donne un accès direct à une flopée de raccourcis. Ces raccourcis sont certes utilisables pour les autres applications Windows, mais ils sont quand même bien utiles quand on travaille avec Excel.


C’est probablement dans Excel la source de raccourcis la plus méconnue. Mais il est vrai que la plupart de ces raccourcis ne concernent pas directement Excel.

Win + D (Desktop) : réduit toutes les applications ouvertes.

Win + E (Explorer) : ouvre l’explorateur de fichiers

Dans de nombreuses situations, c’est la façon la plus rapide d’accéder dans Excel à l’ouverture de fichiers sur lesquels on a travaillé récemment. On voit d’un coup d’œil la liste des derniers fichiers ouverts, toutes applications confondues, avec leur chemin complet.

Win + L (Lock) : verrouillage immédiat de l’écran.

Win + M (Minimize) : réduit toutes les applications ouvertes (comme Win+D). Je ne vois pas bien l’intérêt de ce double emploi…

Win + R (Run) : il faut entrer le nom d’un programme, dossier, document ou ressource Internet que l’on demande à Windows d’ouvrir.

Win + P (Project) : pour modifier le lieu de projection de l’écran.


Win + n° : ouvre la tâche placée dans cette position dans la barre des tâches en bas de votre écran. Ainsi, si l’icône de Powerpoint est la troisième à droite de l’icône de Windows dans la barre des tâches, Win + 3 ouvre Powerpoint. Cela joue en quelque sorte le rôle d’un [Alt]-[Tab] intelligent.

Win + flèche de déplacement : redimensionne et/ou déplace la fenêtre Excel.

Win + PgUp/PgDn : déplace la zone affichée dans Excel d’une page vers le haut/vers le bas.

10 août 2017

Commentaires sur l’énigme

L’énigme que nous avons étudiée dans les articles précédents avait été proposée par M. Laurent Poli à la société Eurodécision qui publie plusieurs fois par an des énigmes sur son blog. Lui-même a d’ailleurs trouvé une autre solution presque entièrement par VBA, et qui aboutit au même résultat. Sa solution est donc plus compacte que celle que je vous ai proposée, mais ne permet pas de suivre aussi facilement la façon dont les sièges de l’avion se remplissent.

D’autres personnes ont trouvé la solution par récurrence. Il est clair que, dans le cas de 2 passagers, il y a une chance sur deux que le second passager puisse occuper la place qui lui était réservée.On vérifie aisément que c’est encore vrai avec 3 passagers. Reste alors à construire le raisonnement par récurrence qui prouve qu’il en sera de même avec n+1 passagers si c’est vrai avec n passagers…

Quel est l’avantage de passer par un modèle de simulation tel que celui que je vous ai proposé, par rapport par exemple à une solution analytique ? En fait, il y en a deux.

Le premier est que mon modèle de simulation permet de suivre pas à pas, de façon visuelle, le remplissage de l’avion et de vérifier à tout moment le bon fonctionnement de l’algorithme. C’est donc à la fois un outil pédagogique et un contrôle de sécurité permanent.

Le second est que, s’agissant d’une simulation, on peut intégrer sans limite des règles ou conditions supplémentaires, ce qui ne serait pas possible avec une approche analytique. On peut par exemple décider que toute personne ne pouvant s’asseoir à sa place réservée s’assiera sur la place vide la plus proche de celle-ci. Ou, dans une autre simulation, sur une place de même nature (fenêtre, couloir).

Si vous voulez en lire plus sur cette énigme, voici quelques références qui m’ont été proposées par Laurent Poli :

Ou alors, aussi par simulation mais sans Excel, avec l’aide du logiciel gratuit d’analyse statistique « R » :

Si vous désirez recevoir à titre gracieux mon fichier Excel, envoyez-moi un mail à cet effet à :

04 août 2017

Passagers d’un avion (e)

Maintenant que nous avons un modèle qui simule parfaitement le remplissage d’un avion, il ne reste plus qu’à simuler un grand nombre de remplissages pour voir quelle est – en moyenne – la probabilité pour que le 100ème passager puisse occuper la place qui lui était réservée.

Voici à quoi ressemble le modèle final. La macro présentée dans l’article précédent se lance avec le bouton « 1 scénario ». La macro de simulation complète se lance avec le bouton « Simulation ». Elle fait 10 boucles de 100 itérations dont les résultats sont affichés en Y2:Y101, puis stocke le résultat en colonne Z. Enfin, Z13 affiche la moyenne ainsi obtenue sur 1.000 remplissages de l’avion.


Voici le code de la macro :

Sub Simulation()
'
' Auteur : Hervé Thiriez
'
Dim I As Integer
Dim K As Integer
Dim L As Integer

Range("V2:V11").ClearContents
For L = 1 To 10
    Range("Y2:Y101").ClearContents
    Application.ScreenUpdating = False
    For K = 1 To 100
        Range("A1") = 1
        Calculate
        For I = 2 To 19
            Range("A1") = I
            Calculate
        Next I
        Cells(K + 1, 25) = Range("Rés")
    Next K
    Cells(L + 1, 26) = Range("Pct").Value
    Application.StatusBar = "Fin du traitement n°" & L
    Application.ScreenUpdating = True
Next L

Application.ScreenUpdating = True
Application.StatusBar = ""
Calculate
End Sub

On obtient donc le résultat moyen de 50%. Notez qu’il est important de reproduire les colonnes F:G jusqu’à V:W. En effet, au début, je m’étais arrêté 4 colonnes plus tôt et j’obtenais alors un résultat moyen de plus de 60% !

Et voilà ! Nous avons trouvé la solution de l'énigme :)