Algorithme/programmation

Y compris Power BI, Power Query et toute autre question en lien avec Excel
L
Loeq
Jeune membre
Jeune membre
Messages : 12
Appréciation reçue : 1
Inscrit le : 3 mai 2019
Version d'Excel : 2016fr

Message par Loeq » 9 mai 2019, 10:42

Bonjour,

Je cherche à m'entrainer, à comprendre l'algorithme/programmation avant de le traduire en VBA excel, parce que c'est pas du tout naturel pour moi de faire des choses sur excel VBA, je sais faire des petites choses, mais sans comprendre profondement.

Et moi j'ai besoin de comprendre vraiment ce qui a derrière, pour le faire naturellement.

Donc je cherche à faire plein de petite chose dans un premier temps que algorithmiquement, mais pour un usage VBA ( je pense que l'algorithme change selon le code auquel on va le traduire )
Je connais ce site très bien pour la resolution de problème comme je recherche https://www.hackerrank.com/challenges/c ... ts/problem, mais c'est pas en algorithmique ni en VBA mais en d'autre code
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 421
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 9 mai 2019, 10:48

Bonjour,

A mon humble avis, en prenant à bras le corps un cas concret avec un fichier Excel ... les choses seront bien plus concrètes et tangibles ... que de philosopher sur les différentes théories algorithmiques ...

Bon Courage
;;)
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
Avatar du membre
pierrep56
Membre impliqué
Membre impliqué
Messages : 1'206
Appréciations reçues : 198
Inscrit le : 18 juin 2014
Version d'Excel : 2016

Message par pierrep56 » 9 mai 2019, 11:12

Bonjour à tous,

A 100% pas d'accord avec ton idée :
Loeq a écrit :
9 mai 2019, 10:42
je pense que l'algorithme change selon le code auquel on va le traduire
Il me semble plutôt que l'algorithme est (et doit être) totalement indépendant du langage utilisé.

Mais sinon, à 100% d'accord avec James.

Pierre
G
GNIN
Membre habitué
Membre habitué
Messages : 74
Appréciations reçues : 6
Inscrit le : 6 février 2019
Version d'Excel : 2003
Version de Calc : 4.3

Message par GNIN » 9 mai 2019, 12:04

Bonjour,

Je suis entièrement d'accord avec PIERREP56 et JAMES007.

En tant que formateur Excel VBA, je débute mon cours avec un chapitre sur l'algorithmique, en faisant totalement abstraction du langage.

Je poursuis par l'étude des éléments de langage (hors fonctions spécifiques Excel) avec des exemples simples:
Les calculs et fonctions mathématiques, les chaines de caractères, les procédures et les fonctions (private ou public), les variables et les constantes (et leur portée), les déclarations, les structures itératives et alternatives, etc...

J'enchaine ensuite avec des instructions spécifiques Excel:
- les selections (cellules, onglets, zones, lignes, colonnes,...)
- les déplacements
- les actions (sélection, valorisation, mise en forme, suppressions,....)
- la hiérarchie des objets (Workbooks, Worksheets, Columns, Rows, Ranges,...)

Tout cela au travers d'exemples de plus en plus complexes qui utilisent des fonctions et procédures intégrées ou personnelles.

Donc, pour conclure, je te suggère une formation en présentiel ou sinon un bon bouquin (J'ai personnellement beaucoup appris avec les livres). En fait, un forum est plutôt réservé à ceux qui ont déjà un minimum de connaissances et qui rencontrent des problèmes ponctuels. Cela évite de réinventer la roue et donc de perdre du temps.

Bien cordialement,
1 membre du forum aime ce message.
G
Gli73
Membre fidèle
Membre fidèle
Messages : 291
Appréciations reçues : 37
Inscrit le : 12 avril 2019
Version d'Excel : PC 2013
Contact :

Message par Gli73 » 9 mai 2019, 13:01

Bonjour tous, Loeq

Entièrement d'accord avec tous
@pierrep56
une précision sur
pierrep56 a écrit :
9 mai 2019, 11:12
Il me semble plutôt que l'algorithme est (et doit être) totalement indépendant du langage utilisé.
Je confirme l'algo fait complètement fi du langage, il décrit une situation, un déroulement, des actions à réaliser dans un langage standard que n'importe qui peut comprendre... C'est même normalement ce que l'on appelait naguère "un langage naturel" au sens de humain pour naturel. Charge ensuite au spécialiste de tel langage ou tel autre de le transcrire !

En utilisant une terminologie aujourd'hui oubliée (et malheureusement ) l'analyste produit l'algo, le programmeur fait la transcription, l'analyste programmeur fait les deux (sauf qu'il ne peut pas connaitre tous les langages !

@james007
James007 a écrit :
9 mai 2019, 10:48
A mon humble avis, en prenant à bras le corps un cas concret avec un fichier Excel ... les choses seront bien plus concrètes et tangibles ... que de philosopher sur les différentes théories algorithmiques ...
oui et non car le problème de Loeq est plus conséquent que cela. Je pense qu'il fait un blocage sur "et pourquoi je dois coder" plutôt que sur "comment je peux coder" (en utilisant "code" pour employer la terminologie absconse en vogue de nos jours)
Il faut surtout qu'il se dise "j'ai un problème à résoudre" donc "je pose le problème en équation" et "je produis une solution étape par étape" pour être certain de ne rien oublier ! Mais là où je te rejoins Excel a l'avantage d'être simple à aborder !

@GNIN
Très heureux de rencontrer enfin un Formateur qui utilise cette "méthodologie de formation" (je croyais que cette espèce avait disparue) :lol:
Je confirme absolument tes propos : aucun langage, aussi simple soit-il ne peux se comprendre sans avoir des bases d'algorithmique, donc une relative habitude à structurer la pensée.
Entre parenthèses, la logique humaine est structurée, le vrai problème c'est que l'on pense aujourd'hui que tout est déjà fait et qu'il suffit de recopier ce "déjà fait" pour répondre à n'importe quel besoin ! Cependant que les problèmes sont complètement différents et plus souvent encore de plus en plus complexe à notre époque où l'on veut tout, tout de suite, sans dépenser le moindre centime !
Les livres ! Les livres, que les livres, pas du tout cuit, du tout fait, que l'on trouve sur Internet, à cause du manque de temps et parfois de compétences de certains youtublabla. Je ne parle pas des "open-classroom" qui sont de très souvent de très bons cours !

@Tous
Un super exercice à faire pour apprendre et comprendre l'algo et donc la "philosophie informatique"
Décrivez toutes les actions du matin
=> à partir du moment où vous fermez la porte de chez vous
<= jusqu'au moment où vous démarrez votre voiture
Si vous décrivez moins de 10 actions vous pouvez relire votre cours ;;)
Si vous décrivez au moins 150 actions je vous embauche ! :lol:
1 membre du forum aime ce message.
Excelement Vôtre
Cogito ergo Excel
Per espera ad Excel

Développeur Indépendant sur Excel et 40 ans d'expérience informatique, je peux vous aider à apporter une touche "pro" à vos réalisations !
G
GNIN
Membre habitué
Membre habitué
Messages : 74
Appréciations reçues : 6
Inscrit le : 6 février 2019
Version d'Excel : 2003
Version de Calc : 4.3

Message par GNIN » 9 mai 2019, 13:33

Bonjour Gli73,

C'est une excellente analyse , que je partage totalement.

Et oui, je suis de la vieille école avec 25 ans dans les services informatiques d'une grande administration et 20 ans de formation sur différents sujets informatiques.

Pour tout dire, j'ai commencé avec le COBOL et mon premier PC (au travail) était un GOUPIL G4 avec un disque dur d'une capacité invraisemblable de 20 MO et un processeur de 4Mhz (une ferrari !). C:\>_

Concernant la structuration de la pensée humaine, je recommande un livre que je lis en ce moment pendant mes trajets en métro, à savoir: "Libérez votre cerveau" de Idriss Aberkane.

Bonne journée à tous,
L
Loeq
Jeune membre
Jeune membre
Messages : 12
Appréciation reçue : 1
Inscrit le : 3 mai 2019
Version d'Excel : 2016fr

Message par Loeq » 9 mai 2019, 14:04

J'aimerais preciser que la pensée humaine, les interactions, la communication humaine n'est pas du tout comme celle informatique, c'est une des raison de ma difficulté, et de la difficulté aussi du commun des mortel en programmation.

Les gens interagissent de manière emotionnelle, et surtout pour des choses qu'on juge utile pour notre survie, pour des chose que notre cerveau juge inconsciemment inutile pour notre survie, ben il ne le comprendra pas.

La logique informatique est totalement differente de la logique des interactions humaine, et ce degré varie selon la culture
G
Gli73
Membre fidèle
Membre fidèle
Messages : 291
Appréciations reçues : 37
Inscrit le : 12 avril 2019
Version d'Excel : PC 2013
Contact :

Message par Gli73 » 9 mai 2019, 17:34

Bonjour

@Loeq
Tu te trompes dans ta vision de la programmation, c'est là où se trouve ton blocage !

Lorsque je dis (nous disons) "comme la pensée humaine" demande toi seulement qui a inventé les ordinateurs et les langages informatiques....

Ni les langages, ni les ordinateurs ne sont capables de pensées, d'imagination ou d'émotions (fort heureusement à mon avis).
Mais toi (comme nous tous) lorsque nous interagissons les uns avec les autres nous analysons la situation, pour la comprendre.

La décision que tu vas prendre d'aller voir cette personne et discuter avec plutôt qu'une autre est une (si tu veux une émotion), mais même si tu as agit d'instinct ou d'émotion, ton cerveau a analysé la situation, pour t'indiquer, te désigner avec quelle personne discuter.
Modifié en dernier par Gli73 le 9 mai 2019, 18:38, modifié 2 fois.
Excelement Vôtre
Cogito ergo Excel
Per espera ad Excel

Développeur Indépendant sur Excel et 40 ans d'expérience informatique, je peux vous aider à apporter une touche "pro" à vos réalisations !
G
Gli73
Membre fidèle
Membre fidèle
Messages : 291
Appréciations reçues : 37
Inscrit le : 12 avril 2019
Version d'Excel : PC 2013
Contact :

Message par Gli73 » 9 mai 2019, 17:56

@GNIN

Enchanté !
Monsieur avait les moyens, je n'ai débuté que sur un XT, écran vert, Fhz 4,77Mhz, 640Ko RAM et HD 10Mo :lol: :lol:

COBOL, BASIC, Fortran, Modula.... et même LISP
Pour l'histoire tant l'anecdote LISP (Lots of Irritating and Silly Parentheses ou dans la langue de Molière Langage Insipide et Stupidement Parenthésé) le langage par excellence de l'intelligence artificielle est tout de même le langage le plus éloigné de toute forme de structuration de pensée et de penser ! malgré la notation EBNF !

Quant à
GNIN a écrit :
9 mai 2019, 13:33
Idriss Aberkane
et bis repetia !
Excelement Vôtre
Cogito ergo Excel
Per espera ad Excel

Développeur Indépendant sur Excel et 40 ans d'expérience informatique, je peux vous aider à apporter une touche "pro" à vos réalisations !
G
Gli73
Membre fidèle
Membre fidèle
Messages : 291
Appréciations reçues : 37
Inscrit le : 12 avril 2019
Version d'Excel : PC 2013
Contact :

Message par Gli73 » 9 mai 2019, 18:33

Bonjour

@GNIN
Poursuite des présentations en MP pour ne pas perturber notre pauvre Loeq ?
Excelement Vôtre
Cogito ergo Excel
Per espera ad Excel

Développeur Indépendant sur Excel et 40 ans d'expérience informatique, je peux vous aider à apporter une touche "pro" à vos réalisations !
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message
  • Algorithme de cumul
    par Dadams51 » 9 juin 2018, 23:07 » dans Excel - VBA
    4 Réponses
    158 Vues
    Dernier message par Jean-Eric
    10 juin 2018, 06:42
  • Explication algorithme
    par Emraude » 21 avril 2018, 05:11 » dans Excel - VBA
    2 Réponses
    169 Vues
    Dernier message par ceuzin
    21 avril 2018, 21:48
  • algorithme d'euclide
    par rocket4 » 14 janvier 2019, 13:37 » dans Excel - VBA
    6 Réponses
    197 Vues
    Dernier message par dhany
    14 janvier 2019, 23:26
  • Aide algorithme
    par Jfranjiuo » 14 septembre 2014, 19:11 » dans Excel - VBA
    2 Réponses
    325 Vues
    Dernier message par Jfranjiuo
    14 septembre 2014, 20:43
  • Algorithme en VBA
    par Abilys38 » 24 mars 2017, 14:15 » dans Excel - VBA
    6 Réponses
    223 Vues
    Dernier message par curulis57
    2 avril 2017, 04:36
  • Algorithme de répartion
    par ddetp88 » 21 juin 2015, 08:11 » dans Excel - VBA
    13 Réponses
    1190 Vues
    Dernier message par ddetp88
    25 juin 2015, 07:30