IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Faisabilité Macro - inventaire piscicole


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Bénévole
    Inscrit en
    Juillet 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Bénévole
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2014
    Messages : 11
    Points : 4
    Points
    4
    Par défaut Faisabilité Macro - inventaire piscicole
    Bonjour.


    Pourriez vous m'indiquer, s'il vous plait, si la mise en place de calculs/macro décrite ci dessous, peut se faire en utilisant excel ?
    Je suis complètement novice, mais étant soit disant le plus calé en informatique dans un groupe associatif, on ma demandé d'essayer de mettre ça en place.. Mais avant de lire tout les tutoriels existant sur excel, j'aurais souhaité savoir si déjà, ça peut se faire.

    Voici l'image de la feuille en question, ce sera plus simple pour expliquer ce que l'on cherche à faire :

    L'idée étant de faciliter la saisie d'inventaire piscicole. Il faudrait qu'un tableau puisse se générer automatiquement en fonction des données.
    Nom : excel-peche.png
Affichages : 2342
Taille : 46,2 Ko
    Dans la colonne A, on saisit un code correspondant à une espece
    Dans la colonne B, la taille de son espèce.

    Il faudrait que le tableau, puisse s'agrandir en fonction du nombre d'espèce trouvés, qu'il génère le nom complet de l'espèce en fonction de son code ( exemple qu'il écrive Vairon, pour VAI), et qu'il calcul un total (effectif) en fonction du nombre de ligne crées, sachant que la saisie de ne ferra pas toujours dans l'ordre, il est possible qu'un jour on saisie 3000 poissons avec 30 espèces concernés dans le désordre..

    Est ce que cela peut se faire, sachant qu'on ne sait jamais le nombre exact de ligne qu'il y aura, ainsi que le nombre d'espèce ?


    Pas évident à expliquer ce problème, j'espère avoir été assez explicite pour vous demander de l'aide.

    Merci bien.

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    C'est possible et sans macros

  3. #3
    Candidat au Club
    Homme Profil pro
    Bénévole
    Inscrit en
    Juillet 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Bénévole
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2014
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    Bonsoir,


    Merci du retour. J'ai déjà du comprendre à moitié alors la différence entre macro et formules...
    J'ai pensé justement qu'il falait passer par des macros pour qu'un tableau ajuste automatiquement le nombe de lignes en fonction de données issue d'une autre colonne.

    Est ce que vous pourriez m'aiguiller vers le "type" de formule que je dois utiliser ? Pour l'instant la plupart des informations que je trouve, reprenne principalement des formules mathématiques.
    Dans mon cas, il y en aurait une partie, mais c'est juste une adition de données issue d'un nombre de lignes variable. Et, le fait qu'une ligne se mette en place si un certain code est trouvé dans une colonne ( ex: Si VAI = Création ligne avec 1 colonne= vairon + une autre colonne= addition du nombre de lignes sur lequelles figure VAI).

    Je commence a me rendre compte que la programmation excel peut être un metier à part entière ! Tellement d'informations et de possibilités que ce n'est pas évident de se retrouver pour une utilisation ciblée.

    Auriez vous des liens vers des tutoriels pouvant m'aider dans ce que souhaite faire ?

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Si j'ai bien compris, le résultat du calcul est à mettre dans le tableau de droite. C'est ça ?

    Comme le dis mercalog, à mon avis, ça peut se faire sans macro VBA.

    Pour commencer, je te conseille de mettre ton tableau de saisie dans un autre onglet que celui de résultat (ou éventuellement en dessous des autre et non à côté) parce que, placé comme ça, ça ne fait pas très "propre".

    Ensuite, je te conseille de nommer les groupes de cellules qui vont être utilisées. C'est un peu fastidieux mais ça t'apportera de la souplesse : il est plus facile de modifier la plage d'un nom que d'avoir à changer cette plage dans des dizaines de fonctions. Or, comme tu veux pouvoir changer la taille de tes tableaux, ça me semble utile. Ca permettra aussi d'avoir des fonctions plus simples et plus claires.
    Pour donner un nom à une plage, c'est dans Ruban Formules > Définir un nom.
    Par exemple, on va donner un nom à la plage où sont inscrites les espèces dans ton tableau de résultats. Pour ça, tu sélectionnes (voir l'image que tu as transmise) les cellules E12 à G15. Tu vas dans "Définir un nom" et tu la nommes "Espèces".
    Ensuite, quand tu voudras modifier la dimension de cette plage, il te suffira d'aller dans le "Gestionnaire de noms".

    Citation Envoyé par Cdrice Voir le message
    Il faudrait que le tableau, puisse s'agrandir en fonction du nombre d'espèce trouvés,
    Pour ça, la solution la plus simple, c'est de prévoir large dès le début, aussi bien dans le tableau de saisie que dans le tableau de résultat.

    qu'il génère le nom complet de l'espèce en fonction de son code ( exemple qu'il écrive Vairon, pour VAI),
    Qu'il le génère où ? Dans le tableau de saisie ?
    Dans ce cas, il suffit de rajouter une colonne au tableau de saisie dans laquelle tu mets une formule de recherche. Par exemple, dans la case D2, tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =RECHERCHEV(A2;Espèce;3;0)
    Ca signifie qu'il recherchera le contenu de la case trois colonnes à gauche sur la même ligne dans la plage "Espèce" (puisqu'on lui a donné ce nom précédemment) et renverra la valeur se trouvant dans la colonne 3 de cette plage.
    Tu recopies cette formule sur toutes les lignes de ton tableau de saisie.

    Si tu ajoutes une espèce dans ton tableau de résultat, il suffira de changer la plage de ton nom "Espèce" sans avoir à toucher à tes formules.
    Tu commences à voir l'intérêt de nommer les cellules.

    et qu'il calcul un total (effectif) en fonction du nombre de ligne crées,
    Ca se règle avec un NB.SI.

    Commence par nommer la plage de saisie des espèces. Dans ton exemple, on donnera le nom "Saisies" à la plage A2:A30
    Dans la plage H2, tu tapes la formule :
    Tu la recopies dans les autres lignes de la colonne H.

  5. #5
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Pour nommer dynamiquement ton tableau de donnée, tu peux ajuster la source du nom par la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER($A$1;1;0;NBVAL($A:$A)-1;3)
    En considérant qu'il n' y pas de blanc entre cellules de la colonne A

    PS. Les TCD (tableaux croisés dynamiques) est l'un des outils de synthèse qu'offre excel et qui sont très simple à mettre en place.

    Sinon, regarde en bas de la page, tu as des liens à la FAQ et aux Tutos de ce site

  6. #6
    Candidat au Club
    Homme Profil pro
    Bénévole
    Inscrit en
    Juillet 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Bénévole
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2014
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    Génial, merci pour ces explications.

    Je vais d'ici peu me mettre au travail et essayer de mettre ça en pratique !
    Moi qui pensais qu'excel servait à faire des =somme et 2 3 truc en plus. J'ai pas fini d'en apprendre je pense, d'un côté, je suis content que l'on m'ait demandé de faire ce tableau !

    Un grand merci encore ! Vous avez réussi a m'aiguiller dans mon problème, mais aussi donnés envie d'en savoir un peu plus.

    Je vais pouvoir faire des tableaux encore plus complexes par la suite ! Bon si j'en fais trop, mes amis ne vont pas arrêter de me soliciter.. je vais plus dormir a force ..

  7. #7
    Candidat au Club
    Homme Profil pro
    Bénévole
    Inscrit en
    Juillet 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Bénévole
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2014
    Messages : 11
    Points : 4
    Points
    4
    Par défaut
    Bonjour,


    Je viens réouvrir ce sujet pour demander à nouveau de l'aide sur cette même thématique.
    Grâce à vous, j'ai pu arriver à faire ce que je voulais, et même aller plus loin dans certains calculs !
    Toutefois à voir toutes les possibilités de ce logiciel, on en veux toujours plus, mais trouver la bonne manière de faire n'est pas si évident..
    Il faudrait peut être que je modifie l'objet de ce post et le déplace dans la rubrique adéquate avant d'avoir réponse ? Dans le doute, j'ose tout de même poster mon problème..

    Je souhaiterais maintenant pouvoir classer les espèces par taille dans une nouvelle feuille:
    Voici l'image en question : Nom : classes-tailles.png
Affichages : 663
Taille : 13,6 Ko ( sur mon premier post, j'avais inséré une image de la feuille de saisie)
    J'aimerais en fait faire un tableau où les colonnes se créent en fonction du type d'espèces retrouvées, donc nombre de colonnes variables,
    et qu'ensuite la quantité d'espèces correspondant à une classe de taille, soit inscrite sous cette colonne d'espèces..

    Est ce bien avec un tableau croisé dynamique que je dois faire ça, et y associer des fonctions conditionnels ?
    Vu tout ce qui peut se faire avec excel, un tel tableau pourrais se faire non ?
    Pourriez vous, s'il vous plait, m'aiguiller à nouveau vers la marche à suivre pour y arriver ?

    Merci

    J'ai oublié que j'ai bien réussi à mettre en place un tableau croisé dynamique avec en colonne les espèces, en lignes les longueurs, et valeurs les longueurs également.
    Mais je ne sais pas quel paramètre de champ appliquer aux lignes, pour arriver à ce que je souhaite. J'ai dû tout essayer comme paramètre de champ, sans arriver à ce que je veux.

    J'ai donc pensé qu'il fallait que je m'y prenne différemment, mais la je sèche..

    Je me complète à nouveau...

    Je pourrais dans ce tableau, saisir toutes les epèces sur les colonnes, et pour chaque cellule avoir une formule conditionnelle différente.

    Mais dans ce cas, il faudrait que la formule puisse être :
    Si "nom de feuille de saisie" colonne A = "VAI"
    Alors afficher nombre de valeurs qui sont comprises entre 0-10 dans colonne B, qui correspondent aux lignes avec intitulé "VAI" de la colonne A

    L'assistant formules n'est pas pratique pour ça, je m'approche d'une solution, mais pour trouver la formule qui va bien c'est pas encore ça

Discussions similaires

  1. faisabilité d'un lien double créé pendant macro
    Par firaponte dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 15/09/2008, 14h44
  2. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15
  3. Qu'est-ce qu'une macro ?
    Par karli dans le forum Assembleur
    Réponses: 2
    Dernier message: 01/09/2002, 03h38
  4. Réponses: 2
    Dernier message: 22/07/2002, 12h13
  5. Question de faisabilité
    Par lisarasu dans le forum CORBA
    Réponses: 3
    Dernier message: 14/05/2002, 11h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo