Différences entre versions de « Algorithmique et programmation VBA »

De Didaquest
Aller à la navigationAller à la recherche
 
(60 versions intermédiaires par le même utilisateur non affichées)
Ligne 29 : Ligne 29 :
 
|Domaine-Discipline-Thématique-2= Algorithmique
 
|Domaine-Discipline-Thématique-2= Algorithmique
 
|Domaine-Discipline-Thématique-3= Programmation
 
|Domaine-Discipline-Thématique-3= Programmation
|Domaine-Discipline-Thématique-4= Didactique de l'informatique
+
|Domaine-Discipline-Thématique-4= Mathématique
|Domaine-Discipline-Thématique-5=
+
|Domaine-Discipline-Thématique-5= Pensée logique
|Domaine-Discipline-Thématique-6=
+
|Domaine-Discipline-Thématique-6= Robotique
|Domaine-Discipline-Thématique-7=
+
|Domaine-Discipline-Thématique-7= Bio-informatique
|Domaine-Discipline-Thématique-8=
+
|Domaine-Discipline-Thématique-8= Indexation automatique sur Internet
|Domaine-Discipline-Thématique-9=  
+
|Domaine-Discipline-Thématique-9= Commerce électronique
|Domaine-Discipline-Thématique-10=
+
|Domaine-Discipline-Thématique-10= Gestion de mémoires
 
+
|Domaine-Discipline-Thématique-11= Intelligence artificielle
 +
|Domaine-Discipline-Thématique-12= Automatisation des tâches
 +
|Domaine-Discipline-Thématique-13= IoT
 +
|Domaine-Discipline-Thématique-14= Théorie des graphes
 +
|Domaine-Discipline-Thématique-15= Programmation événementielle
 
}}<!--****************** Fin modifications: Fiche-Disciplines-Thématiques *****************************-->
 
}}<!--****************** Fin modifications: Fiche-Disciplines-Thématiques *****************************-->
  
Ligne 49 : Ligne 53 :
 
<!-- *************** Commercez les modifications *******************-->
 
<!-- *************** Commercez les modifications *******************-->
  
* '''L'algorithmique''' est la discipline qui s'intéresse aux algorithmes. Un algorithme est une suite d'opérations (dites instructions) qui décrivent la solution d'un problème informatique posé. Il s'agit du plan ou la structure d'un programme informatique.
+
* '''<span style="color:#009900"> L'algorithmique</span>''' est la discipline qui s'intéresse aux algorithmes.  
* Un algorithme est indépendant de tout langage de programmation, mais il est étroitement lié à celui-ci car il en constitue la logique.
+
* '''<span style="color:#009900"> Un algorithme</span>''' est une suite d'opérations (dites instructions) qui décrivent la solution d'un problème informatique posé. Il s'agit du plan ou la structure d'un programme informatique.
* Le VBA (Visual Basic for Applications) est un langage proche du Visual Basic qui nécessite une application hôte pour s'exécuter.  
+
* Un algorithme est'''<span style="color:#009900"> indépendant de tout langage de programmation</span>''', mais il est étroitement lié à celui-ci car il en constitue '''<span style="color:#009900"> la logique</span>'''.
 +
* Le '''<span style="color:#009900"> VBA</span>''' ('''<big><span style="color:#009900"> V</span></big>'''isual '''<big><span style="color:#009900"> B</span></big>'''asic for '''<big><span style="color:#009900"> A</span></big>'''pplications) est un langage proche du Visual Basic qui nécessite une application hôte pour s'exécuter.  
  
 
<!-- ******** Fin Définition Générale ***************************** -->
 
<!-- ******** Fin Définition Générale ***************************** -->
Ligne 58 : Ligne 63 :
 
|Typologie= <!------------------------------------ Ne pas Modifier  -->
 
|Typologie= <!------------------------------------ Ne pas Modifier  -->
 
<!-- ****************** Commercez les modifications ****************-->
 
<!-- ****************** Commercez les modifications ****************-->
*......................................................................
+
♦ '''<big><span style="color:#CC00FF">Un algorithme</span></big>''' est une procédure de calcul bien définie qui prend en entrée un ensemble de valeurs et qui délivre en sortie un ensemble de valeurs.<p>
.......................................................................
+
♦ Une valeur particulière de l'ensemble des valeurs données en entrée est appelée '''<big><span style="color:#CC00FF">instance</span></big>'''du problème.<p>
.......................................................................
+
♦ Un algorithme est '''<big><span style="color:#CC00FF">correct</span></big>''', si pour toute instance du problème il se termine et produit une sortie correcte.<p>
.......................................................................
+
♦ '''<big><span style="color:#CC00FF">Une heuristique</span></big>''' est une procédure de calcul correcte pour certaines instances du problème (c'est-à-dire se termine ou produit une sortie correcte).<p>
*......................................................................
+
♦ '''<big><span style="color:#CC00FF">Une structure de données</span></big>'''est un moyen de stocker et d'organiser des données pour faciliter leur stockage, leur utilisation et leur modification.<p>
.......................................................................
+
♦ '''<big><span style="color:#CC00FF"> L'efficacité </span></big>'''d'un algorithme est mesurée par son '''<big><span style="color:#CC00FF">coût</span></big>''' ('''<big><span style="color:#CC00FF">complexité</span></big>''') en temps et en mémoire.<p>
.......................................................................
+
♦ Un problème '''<big><span style="color:#CC00FF">NP-complet</span></big>''' est un problème pour lequel on ne connaît pas d'algorithme correct efficace, c'est-à-dire réalisable en temps et en mémoire. Le problème le plus célèbre est '''le problème du voyageur de commerce'''.<p>
 +
[[Fichier:Tsp.gif|vignette|gauche|Problème NP-complet]]
 +
[[Fichier:ia.gif|vignette|centré|IA]]
 +
[[Fichier:imgcode.jpg|vignette|centré|Exemplecode ALGO_VBA]]
 +
 
 +
 
 
}}<!-- ******** Fin Fiche Didactique Définition ******************* -->
 
}}<!-- ******** Fin Fiche Didactique Définition ******************* -->
  
 
== {{Widget:Definition-graphique-Fiche}} ==
 
== {{Widget:Definition-graphique-Fiche}} ==
 
+
{{cc}} [https://cmapscloud.ihmc.us/viewer/cmap/1XT5TFPZ8-86D7H9-Q51CZK Carte conceptuelle : Algorithmique et programmation VBA]
 +
{{cc}} [https://didactique.info/formation/course/view.php?id=423 Didactique.info : Algorithmique et programmation VBA].<span style="color:#009900"> Pour s'inscrire dans le cours, veuillez saisir la clé suivante: (<i>cliquez sur l'image pour agrandir</i>)
 +
<gallery></span>
 +
INSC.JPG|Algo_VBA_Didactique.info
 +
</gallery>
 
<!-- ************************* Début ****************************** -->
 
<!-- ************************* Début ****************************** -->
 
{{Fiche Didactique Media <!------------------------------------------->
 
{{Fiche Didactique Media <!------------------------------------------->
Ligne 79 : Ligne 93 :
  
 
<!-- Remplacez, Adaptez, Ajoutez ou Supprimez les images et lignes non utilisées-->
 
<!-- Remplacez, Adaptez, Ajoutez ou Supprimez les images et lignes non utilisées-->
Image:Lfdsbg.gif|Didactique de l'informatique
+
 
 +
Image:Exemplealg.JPG |Exemple code
 +
Image:algosbg.png|Algorithmique
 
Image:VBA-Programming.png|Programmer en VBA
 
Image:VBA-Programming.png|Programmer en VBA
Image:Definition-graphique-concept3.png|Titre de Votre Image 3
+
Image:formsbg.jpg|Créer une interface via VBE
  
 
</gallery><!-- ************** Fin modification images***************************-->
 
</gallery><!-- ************** Fin modification images***************************-->
Ligne 107 : Ligne 123 :
 
<!----------------- Commencez les modifications des Mots Clés --------------------->
 
<!----------------- Commencez les modifications des Mots Clés --------------------->
  
|Mot-Clé-1=
+
|Mot-Clé-1= Structures de données séquentielles
|Mot-Clé-2=
+
|Mot-Clé-2= Structures de données linéaires
|Mot-Clé-3=
+
|Mot-Clé-3= Allocation de mémoires
|Mot-Clé-4=
+
|Mot-Clé-4= Récursivité
|Mot-Clé-5=
+
|Mot-Clé-5= Programmation événementielle
|Mot-Clé-6=
+
|Mot-Clé-6= Programmation modulaire
|Mot-Clé-7=
+
|Mot-Clé-7= Passage par valeur
|Mot-Clé-8=
+
|Mot-Clé-8= Passage par référence
|Mot-Clé-9=
+
|Mot-Clé-9= Excel
|Mot-Clé-10=
+
|Mot-Clé-10= Pensée logique
 
+
|Mot-Clé-11= Macros-commandes
 +
|Mot-Clé-12= Raisonnement
 +
|Mot-Clé-13= Logique
 +
|Mot-Clé-14= Mathématique
 
}}<!-- ********************* FIN Fiche Didactique Mots-clés *******************-->
 
}}<!-- ********************* FIN Fiche Didactique Mots-clés *******************-->
 
  
 
= {{Widget:Exemples-applications-utilisations-Fiche}} =
 
= {{Widget:Exemples-applications-utilisations-Fiche}} =
Ligne 131 : Ligne 149 :
 
<!-- ****************** Commercez les modifications ***********************  -->
 
<!-- ****************** Commercez les modifications ***********************  -->
  
*...............................................................................
+
* les algorithmes de machine learning: Le Machine Learning ou apprentissage automatique est un domaine scientifique, et plus particulièrement une sous-catégorie de l’intelligence artificielle. :* :* Elle consiste à laisser des algorithmes découvrir des ” patterns “, à savoir des motifs récurrents, dans les ensembles de données. Ces données peuvent être des chiffres, des mots, des images, des statistiques…
................................................................................
+
* La cryptographie
................................................................................
+
* L'intelligence artificielle
................................................................................
+
* La santé
*...............................................................................
+
* L'économie
................................................................................
+
* Le Web :
................................................................................
+
    Exemples : '''PageRank''' de Google
................................................................................
+
                '''la Timeline''' de Facebook
 +
* Utilisation optimale des ressources
 +
    Exemple : l’algorithme de '''Round Robin'''
 
}}<!--************** Fin Fiche Didactique Explicitations ******************* -->
 
}}<!--************** Fin Fiche Didactique Explicitations ******************* -->
 
  
 
= {{Widget:Erreurs-confusions-Fiche}} =
 
= {{Widget:Erreurs-confusions-Fiche}} =
Ligne 152 : Ligne 171 :
 
<!-- ****************** Commercez les modifications *************************-->
 
<!-- ****************** Commercez les modifications *************************-->
  
 +
* Confusion entre [[syntaxe algorithmique - syntaxe VBA]]
 
* Confusion entre [[VB.net - VBA]]
 
* Confusion entre [[VB.net - VBA]]
* Confusion entre [[....... - ........]]
+
* Confusion entre [[langage compilé - langage pseudo-compilé  - langage interprété ]]
* Erreur fréquente: ....................
+
* Confusion entre [[Fonction - Procédure]]
 
+
* Confusion entre [[Byref - Byval]]
 +
* Confusion entre [[Notation mathématique - Notation algorithmique]]
 +
* Erreurs fréquentes:
 +
# Incompatibilité de type
 +
# Erreur de compilation
 +
  ''exemples:''
 +
    * ''séparateur de liste superflu ou manquant''
 +
    * ''syntaxe de structure (if, while, Do..Loop until etc. erronée)''
 +
# Initialisation du compteur
 +
# Choix de la strucure de contrôle
 
}}<!-- ************** Fin Fiche Didactique Conceptions ********************* -->
 
}}<!-- ************** Fin Fiche Didactique Conceptions ********************* -->
  
Ligne 167 : Ligne 196 :
 
<!-- ************ Commercez les modifications *********************-->
 
<!-- ************ Commercez les modifications *********************-->
  
* [[..................]]?
+
* [[A quoi servent les algorithmes ]]?
* [[..................]]?
+
* [[Quel sont les types d'algorithmes ]]?
* [[..................]]?
+
* [[Quelle est la différence entre algorithme et programme]]?
 +
* [[C'est quoi la programmation VBA ]]?
 +
* [[VBA est un langage compilé, interprété ou pseudo-compilé]]?
 +
* [[Quelle est la différence entre la programmation des tâches et les interfaces graphiques sous VBA]]?
 +
* [[Comment intégrer des fonctions personnalisées aux fonctions prédéfinies sous VBE]]?
 +
* [[Comment concevoir des algorithmes éthiques (IA) ?]]?
 +
* [[Quel futur pour les algorithmes ]]?
  
 
}}<!-- ******** Fin Fiche Didactique Questions ******************* -->
 
}}<!-- ******** Fin Fiche Didactique Questions ******************* -->
Ligne 185 : Ligne 220 :
 
<!-- ****************** Commercez les modifications **************************  -->
 
<!-- ****************** Commercez les modifications **************************  -->
  
* ..................                                               
+
* Les notions sont abstraites                                               
:* .................
+
:* Apprentissage difficile
* ..................                                               
+
* S'initier à une réflexion sur l'enseignement de la pensée informatique 
:* .................                                               
+
:* indépendamment de la discipline informatique                                           
 +
* Maîtriser les notions mathématiques                                             
  
 
}}<!-- ************************* Fin Idées-Enseignement ********************** -->
 
}}<!-- ************************* Fin Idées-Enseignement ********************** -->
 
  
 
== {{Widget:Aides et astuces-Fiche}} ==
 
== {{Widget:Aides et astuces-Fiche}} ==
Ligne 202 : Ligne 237 :
 
<!-- ****************** Commercez les modifications **************************  -->
 
<!-- ****************** Commercez les modifications **************************  -->
  
* ..................                                               
+
* Forcez-vous à déclarer toute vos variables VBA. Cela peut paraître contraignant, mais finalement il n’y a que des avantages :                                           
:* .................
+
:* Les erreurs seront plus facilement identifiées,
* ..................                                               
+
:* Le code sera plus propre chacune des variables étant clairement définies,
:* .................                                               
+
:* Votre macro VBA sera plus facilement modifiable et adaptable.                                              
 
+
* Ils existent deux solutions vous obligeant de déclarer toutes les variables : 
 +
:* Option Explicit 
 +
:* Option Explicit par défaut : Une autre astuce VBA est de rendre cette mention par défaut. Pour ce faire, il suffit dans la fenêtre de l’éditeur, d’ouvrir le menu options (barre des menus / outils) puis de cocher la case Déclaration des variables obligatoire. La commande sera ensuite automatiquement intégrée à vos modules.                                        
 +
* Mettre à jour l’écran
 +
:* Pour rendre vos macros un peu plus rapides, utilisez la commande ci-dessous. Grâce à elle, vous ne verrez plus chaques actions de votre macro et votre écran restera fix.
 +
:* Inscrivez ce bout de code au début de votre macro ou de votre module pour qu’il fonctionne: Application.ScreenUpdating = False
 +
* Les calculs automatiques
 +
:* Si votre macro VBA va modifier des données qui sont utilisées par des formules, Excel va effectuer les calculs de vos cellules en même temps que la macro tourne.
 +
:* Pour éviter à votre ordinateur de tout faire en même temps et donc de ralentir, inscrivez les deux mentions ci-dessous. La 1ère désactive les calculs automatiques et la seconde les réactive.
 +
:
 +
:* Application.Calculation = xlCalculationManual 'inscrire au début de votre code.
 +
:* Application.Calculation = xlCalculationAutomatic 'inscrire à la fin de votre macro.
 
}}<!-- ************************* Fin Astuces-Enseignement ********************** -->
 
}}<!-- ************************* Fin Astuces-Enseignement ********************** -->
  
Ligne 217 : Ligne 263 :
 
<!-- ****************** Commercez les modifications ************-->
 
<!-- ****************** Commercez les modifications ************-->
  
:* ..................
+
:* https://www.chiny.me/algorithmique-apprendre-a-ecrire-les-algorithmes-17.php#:~:text=Un%20algorithme%20est%20une%20suite,il%20en%20constitue%20la%20logique
:* ..................
+
:* https://www.tutorialspoint.com/vba/index.htm
:* ..................
+
:* https://www.cours-gratuit.com/algorithmique/exercice-algorithme-fonctions-et-procedures
 +
:* https://pdfprof.com/Cours_Telecharger_Exercices_3.php?q=vba+excel+2016+-+cr%C3%A9ez+des+applications+professionnelles+exercices+et+corrig%C3%A9s+pdf
  
 
}}<!-- ************ Fin Liens Education ********************** -->
 
}}<!-- ************ Fin Liens Education ********************** -->
Ligne 232 : Ligne 279 :
 
<!-- Complétez les pointillés et Supprimez les lignes non utilisées  ----->
 
<!-- Complétez les pointillés et Supprimez les lignes non utilisées  ----->
 
<!-- ****************** Commercez les modifications *********************-->
 
<!-- ****************** Commercez les modifications *********************-->
 
+
                                           
* ..................                                               
+
* https://openclassrooms.com/fr/courses/4366701-decouvrez-le-fonctionnement-des-algorithmes
* ..................
+
* http://eric.univ-lyon2.fr/~ricco/cours/cours_excel.html                                             
* ..................                                               
+
* https://algo.developpez.com/tutoriels/initiation/#LXIII                                             
* ..................                                               
 
  
 
}}<!-- ************* Fin Fiche Didactique Bibliographie *************** -->
 
}}<!-- ************* Fin Fiche Didactique Bibliographie *************** -->
  
 
{{Widget:Fiche-Conceptuelle-Bas}}
 
{{Widget:Fiche-Conceptuelle-Bas}}

Version actuelle datée du 8 juin 2022 à 20:32


Autres Fiches Conceptuelles
Posez une Question


(+)

Target Icon.pngVotre Publicité sur le Réseau Target Icon.png

Puce-didaquest.png Traduction


More-didaquest.png Traductions


Puce-didaquest.png Définition

Domaine, Discipline, Thématique


More-didaquest.png Justification


Définition écrite


Un algorithme est une procédure de calcul bien définie qui prend en entrée un ensemble de valeurs et qui délivre en sortie un ensemble de valeurs.

♦ Une valeur particulière de l'ensemble des valeurs données en entrée est appelée instancedu problème.

♦ Un algorithme est correct, si pour toute instance du problème il se termine et produit une sortie correcte.

Une heuristique est une procédure de calcul correcte pour certaines instances du problème (c'est-à-dire se termine ou produit une sortie correcte).

Une structure de donnéesest un moyen de stocker et d'organiser des données pour faciliter leur stockage, leur utilisation et leur modification.

L'efficacité d'un algorithme est mesurée par son coût (complexité) en temps et en mémoire.

♦ Un problème NP-complet est un problème pour lequel on ne connaît pas d'algorithme correct efficace, c'est-à-dire réalisable en temps et en mémoire. Le problème le plus célèbre est le problème du voyageur de commerce.

Problème NP-complet
IA
Exemplecode ALGO_VBA

More-didaquest.png Algorithmique et programmation VBA - Historique (+)


Définition graphique


Ing-connaissance.png Carte conceptuelle : Algorithmique et programmation VBA
Ing-connaissance.png Didactique.info : Algorithmique et programmation VBA. Pour s'inscrire dans le cours, veuillez saisir la clé suivante: (cliquez sur l'image pour agrandir)






Puce-didaquest.png Concepts ou notions associés


More-didaquest.png Algorithmique et programmation VBA - Glossaire / (+)



Puce-didaquest.png Exemples, applications, utilisations

  • les algorithmes de machine learning: Le Machine Learning ou apprentissage automatique est un domaine scientifique, et plus particulièrement une sous-catégorie de l’intelligence artificielle. :* :* Elle consiste à laisser des algorithmes découvrir des ” patterns “, à savoir des motifs récurrents, dans les ensembles de données. Ces données peuvent être des chiffres, des mots, des images, des statistiques…
  • La cryptographie
  • L'intelligence artificielle
  • La santé
  • L'économie
  • Le Web :
    Exemples : PageRank de Google
               la Timeline de Facebook
  • Utilisation optimale des ressources
    Exemple : l’algorithme de Round Robin

(+)


Puce-didaquest.png Erreurs ou confusions éventuelles



Puce-didaquest.png Questions possibles



Puce-didaquest.png Liaisons enseignements et programmes

Idées ou Réflexions liées à son enseignement



Aides et astuces



Education: Autres liens, sites ou portails




Puce-didaquest.png Bibliographie