formateur informatique

Positions probables des numéros du loto

Accueil  >  Bureautique  >  Excel  >  Excel VBA  >  Positions probables des numéros du loto
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Inscription Newsletter
Sujets que vous pourriez aussi aimer :


Positions des numéros à prévoir

Dans le précédent volet de notre application des tirages des lotos, nous avons réussi à calculer les fréquences des numéros appelés aux moments de leurs sorties. L'idée est d'en tirer une ou des tendances pour prévoir sur ces positions, si d'aventure elles étaient démultipliées, les numéros susceptibles d'être appelés au prochain tirage. Dans ce nouveau volet, il est donc question de calculer et de classer les positions les plus fréquentes aux moments de leurs sorties. Ces travaux serviront à une dernière étape, pour suggérer des numéros susceptibles d'être tirés, en toute humilité cela va sans dire. En effet et ne l'oublions pas, les tirages des lotos restent des jeux de total hasard.

Classeur Excel à télécharger
Pour poursuivre ce développement particulièrement ambitieux, nous devons récupérer les travaux au dernier indice. Comme à chaque occasion, vous remarquez que le fichier Excel est accompagné d'un fichier texte et d'un sous dossier. Le fichier texte héberge le code VBA à réintégrer au projet. Le sous dossier est destiné à accueillir le fichier de la française des jeux et sa décompression.
  • Double cliquer sur le fichier du classeur pour l'ouvrir dans Excel,
  • Puis, cliquer sur le bouton Activer la modification du bandeau de sécurité,
Nous débouchons sur la dernière feuille du classeur, celle qui nous intéresse. Elle est nommée stats_sortie. Les fréquences avant sorties des numéros des 48 derniers tirages (environ 4 mois) sont proposées dans un tableau présent entre les colonnes C et H. Pour chaque numéro de boule listé sur une première ligne, les fréquences respectives apparaissent sur la ligne du dessous. C'est dans le tableau, entre les colonnes J et M, que nous devons calculer et classer les fréquences de sorties les plus récurrentes pour les boules et pour les numéros chance.

Tableau Excel pour calculer les fréquences de sorties des numéros du Loto

Bien sûr et comme nous l'avons vu dans le précédent volet, ces fréquences sont calculées par rapport à l'historique des tirages restitué dans la première feuille de ce classeur, la feuille tirages.

Réintégrer le code VBA
Nous le savons désormais, en raison des antivirus parfois malveillants eux-mêmes, nous avons été obligés de détacher le code VBA des précédents travaux. Nous devons le réintégrer pour télécharger le fichier distant, le décompresser, importer ses données et les analyser.
  • A la racine du dossier de décompression, double cliquer sur le fichier texte pour l'ouvrir,
  • Sélectionner tout son contenu avec le raccourci clavier CTRL + A,
  • Le copier avec le raccourci clavier CTRL + C,
  • Revenir sur le classeur Excel (ALT + Tab),
  • Puis réaliser le raccourci clavier ALT + F11 pour basculer dans l'éditeur VBA Excel,
  • Dans l'explorateur sur la gauche, double cliquer sur l'élément Feuil1 (tirages),
  • Dans sa feuille de code au centre de l'écran, coller ces lignes (CTRL + V),
  • En haut de l'éditeur, cliquer sur le menu Outils,
  • Dans les propositions, choisir la rubrique Références,
  • Dans la boîte de dialogue, cocher la case Microsoft Shell Controls And Automation,
  • Enfin, valider son intégration en cliquant sur le bouton Ok de la boîte de dialogue,
Nous l'avons évoqué à maintes reprises à l'occasion des volets précédents, cette librairie est essentielle pour de nombreuses manipulations que nous entreprenons sur ce fichier distant des numéros du loto à étudier.
  • Enfin, enregistrer les mises à jour (CTRL + S),


La procédure et ses variables
Puisque les développements précédents sont restitués, nous pouvons maintenant entreprendre de les poursuivre. Et pour cela, nous devons commencer par créer la nouvelle procédure avec ses variables.
  • Après la procédure freq_sortie, créer la procédure rept_freq comme suit :
Sub rept_freq()
Dim i As Integer: Dim j As Byte
Dim tabF As Variant: Dim tabC As Variant
Dim ligne As Integer

ReDim tabF(1 To 900)
ReDim tabC(1 To 900)
ligne = 4
Sheets("stats_sortie").Range("J4:M100").Value = ""

End Sub


Nous déclarons tout d'abord des variables de boucles (i et j) pour parcourir les lignes et les colonnes du tableau des fréquences de la feuille stats_sortie. Ensuite, nous déclarons deux tableaux de variables (tabF et tabC). Nous les dimensionnerons par la suite. Ils sont destinés à cumuler les fréquences identiques pour les boules et les numéros chance. La variable ligne servira de repère pour savoir restituer les numéros et leurs fréquences dans le tableau qui commence en ligne 4 sur la colonne J.

Nous dimensionnons ensuite les deux tableaux de variables en prenant de la marge (1 To 900). En effet, les tirages vont se cumuler et les fréquences vont grossir. Nous fixons la variable ligne sur la première ligne (4) du tableau de restitution. Puis, nous effaçons sa plage (Range("J4:M100").Value = "") des précédentes statistiques calculées.

Initialiser les tableaux de variables
Désormais, pour que nous puissions piocher les fréquences cumulées aux emplacements des boules parcourues, nous devons dimensionner les tableaux de variables. ...
For i = 1 To 900
tabF(i) = 0
tabC(i) = 0
Next i
...


Sur les 900 lignes des tableaux de variables, nous entrons des zéros. De cette manière, une fois les traitements des cumuls terminés, nous pourrons facilement isoler les fréquences en ignorant tous les zéros.

Cumuls des fréquences de sorties
Maintenant que les tableaux sont initialisés, nous avons le devoir de parcourir toutes les fréquences calculées par le premier tableau. A chaque fois que l'une d'entre elles est répétée, nous devons retranscrire ce cumul dans le tableau de variables. C'est ainsi à l'issue que nous pourrons restituer dans l'ordre des répétitions les plus importantes, les fréquences de sorties a priori les plus favorables pour déceler les numéros à venir lors des prochains tirages.
  • A la suite du code, ajouter la nouvelle boucle suivante :
...
For i = 5 To 146 Step 3
For j = 3 To 7
tabF(Sheets("stats_sortie").Cells(i, j).Value) = tabF(Sheets("stats_sortie").Cells(i, j).Value) + 1
Next j
tabC(Sheets("stats_sortie").Cells(i, 8).Value) = tabC(Sheets("stats_sortie").Cells(i, 8).Value) + 1
Next i
...


Nous parcourons toutes les lignes des fréquences du premier tableau en partant de la cinquième, trois par trois (Step 3), en raison de sa configuration, jusqu'à atteindre la dernière (146). Pour chaque ligne et concernant les boules, nous parcourons toutes les colonnes. Dès qu'un numéro correspond à un autre, nous incrémentons sa répétition dans le tableau de variables (+1). Nous faisons de même en colonne 8 (H) pour les numéros chance, à traiter indépendamment fort naturellement.



Répétitions des fréquences
Grâce à cette première double boucle, nous en savons déjà assez pour restituer les répétitions des fréquences des boules dans le second tableau, pour les colonnes J et K, soit 10 et 11.
  • A la suite du code VBA, créer la nouvelle boucle For suivante :
...
For i = 1 To 900
If (tabF(i) <> 0) Then
Sheets("stats_sortie").Cells(ligne, 10) = i
Sheets("stats_sortie").Cells(ligne, 11) = tabF(i)
ligne = ligne + 1
End If
Next i
...


Nous parcourons les 900 potentielles rangées du tableau de variables. Nous ignorons les cases non incrémentées (tabF(i) <> 0). Pour chaque fréquence ainsi repérée (i) que nous inscrivons en colonne J (10), nous restituons son nombre de répétions constatées en colonne voisine K soit 11.

Répétitions des numéros chance
Pour les numéros chance, maintenant que le tableau de variables a été enrichi, le principe est exactement le même.
  • A la suite du code, créer la nouvelle boucle VBA suivante :
...
ligne = 4
For i = 1 To 900
If (tabC(i) <> 0) Then
Sheets("stats_sortie").Cells(ligne, 12) = i
Sheets("stats_sortie").Cells(ligne, 13) = tabC(i)
ligne = ligne + 1
End If
Next i
...


Nous pensons tout d'abord à recaler la variable ligne sur le premier indice du tableau, étant donnée son incrémentation précédente. Nous n'inscrivons plus les résultats dans les colonnes 10 et 11 mais dans les colonnes 12 et 13 pour les numéros chance, soit L et M.

Trier les tableaux de données
Enfin, pour une interprétation aisée des résultats, nous devons trier les données des tableaux ainsi construits, de manière à organiser les répétitions de la plus forte à la plus faible. C'est ainsi que nous pourrons voir si des tendances se dégagent.
  • A la suite et fin du code, ajouter les instructions VBA suivantes :
...
Sheets("stats_sortie").Sort.SortFields.Clear
Sheets("stats_sortie").Sort.SortFields.Add2 Key:=Range("K3:K100"), Order:=xlDescending
With Sheets("stats_sortie").Sort
.SetRange Range("J3:K100")
.Header = xlYes
.Orientation = xlTopToBottom
.Apply
End With

Sheets("stats_sortie").Sort.SortFields.Clear
Sheets("stats_sortie").Sort.SortFields.Add2 Key:=Range("M3:M100"), Order:=xlDescending
With Sheets("stats_sortie").Sort
.SetRange Range("L3:M100")
.Header = xlYes
.Orientation = xlTopToBottom
.Apply
End With
...


Nous ne revenons pas sur les explications en détail car il s'agit de méthodes classiques de tris que nous avons largement écumées par le passé et notamment dans les volets précédents. Simplement, nous raisonnons sur deux colonnes à la fois, pour différencier les boules des numéros chance. Et nous organisons le tri décroissant (Order:=xlDescending) en fonction des données de la seconde colonne, celle des répétitions.



Récolter les fréquences les plus répétées
Pour exécuter cette nouvelle procédure, nous devons l'appeler.
  • A la fin de la procédure stats_Click, ajouter l'appel suivant :
...
Set tabB = Nothing
Set tabC = Nothing

freq_sortie
rept_freq

End Sub
...
  • Enregistrer les modifications et revenir sur la feuille tirages,
  • Puis, cliquer sur le bouton Stats,
La main est automatiquement rendue à la feuille frequences.
  • En bas de la fenêtre Excel, cliquer sur l'onglet stats_sortie pour activer sa feuille,
Comme vous pouvez le voir, le second tableau est désormais rempli de données à dépouiller. Les fréquences au moment de la sortie les plus répétitives, sont bien classées dans l'ordre croissant pour les boules comme pour les numéros chance.

Remarque : Nous avons dimensionné nos tableaux de variables sur un potentiel de 900 lignes. Nous aurions pu nous contenter de les calibrer sur une valeur beaucoup plus faible, puisque nous récoltons les statistiques seulement sur les 48 derniers tirages. Mais de cette manière et pour ceux qui souhaitent étendre l'étude sur une masse plus importante, le programme peut évoluer.

Fréquences de sorties des numéros du loto en VBA Excel

 
Sur Facebook
Sur Youtube
Les livres
Contact
Mentions légales



Abonnement à la chaîne Youtube
Partager la formation
Partager sur Facebook
Partager sur Twitter
Partager sur LinkedIn