Alimentation base de données Excel [Résolu/Fermé]

Signaler
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
-
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
-
Bonjour,

J’ai besoin d’un peu d’aide pour développer une petite base de données en VBA. J’ai un fichier avec 2 onglets, le premier est l’onglet « formulaire » que mes utilisateurs remplissent en cochant en face des questions dans les colonnes « Oui » « Non » ou « NA ». Les questions de cet onglet peuvent être modifiées à tout moment par le gestionnaire, soit une soit l’intégralité.
Le second onglet est une petite base de données pour stocker les données une fois le formulaire complété afin d’établir des stats.

Le mieux pour représenter mes propos est de vous mettre un exemple de ce à quoi ressemble mon fichier : http://www.cjoint.com/c/FFrhREijeoV

Maintenant que vous voyez plus ou moins l’idée du fichier, voici mon problème : Je n’arrive pas à reporter les infos de mon formulaire dans ma base de données principalement à cause du fait que les questions puissent-être modifiées. Je ne sais pas comment dire en VBA « Si l’intitulé de la question de mon formulaire existe dans ma BDD, alors on ajoute simplement une colonne avec la date et le résultat (oui, non ou na). Sinon il faut ajouter la question à la suite de la BDD avant d’ajouter la colonne. »

J’espère que ma demande est compréhensible et que vous pourrez m’aider !

PS : au cas où cela ne serait pas clair les 3 parties sur chacun de mes onglets représentent toujours le même fichier, mais à des moments différents pour mieux comprendre ma demande !

Merci d’avance. 
Bonne journée,

9 réponses

Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Hello,

Un petit up pour mon problème qui est toujours d'actualité.
Si ce n'est pas clair je peux donner plus d'informations.

Merci d'avance.
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326
Bonjour,

Les questions de cet onglet peuvent être modifiées à tout moment par le gestionnaire, soit une soit l’intégralité.
Il serait plus logique que ce gestionnaire mette les questions directement avec un identifiant ex: Qx dans la base de donnee et de recuperer ces questions par l'identifiant dans le formulaire.

A quoi sert l'auditeur si pas enregistrer ??
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Merci pour la réponse !

La première identification ne peut malheureusement pas être modifiée (ce sont des consignes européennes, c’est pour ça que je suis parti sur une distinction par l’intitulé de la question) en revanche si cela facilite la tâche je peux en ajouter une seconde pour distinguer chaque question ?

Pour ce qui est de l’auditeur, ma macro actuelle sauvegarde une copie du formulaire (en PDF) une fois celui-ci rempli (sur laquelle figure l’auditeur donc si besoin).
Je dois donc en fin d’année refaire les stats à la main à partir des PDF, ce qui avouons-le n’est pas pratique, d’où l’idée de la base alimentée en continue. En revanche pour les stats nous ne devons pas prendre en compte l’auditeur c’est pour ça que cette donnée n’est pas reprise dans la base.

Encore merci
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Re,

Avez-vous regarde le fichier que j'ai mis a dispo f894009 21 juin 2016 à 15:39 ????
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326
Re,

Dans l'attente, un exemple, restera la raz de la zone de saisie

https://www.cjoint.com/c/FFvnNbRa4Ef
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Re,
Désolé je n'avais pas vu votre message avec le fichier...

Le fichier tel que proposé me donne une bonne base de travail (je n’avais pas la moindre idée de comment commencer). En revanche à l’heure actuelle il me pose quelques petits soucis :
1. Il ne prend pas en compte l’ajout d’une nouvelle question (Si j’ajoute la Q7 : Fait-il sombre ?) et que Q7 n’est pas dans la BDD j’ai un message d’erreur (Run time error 91, sur la ligne 22/23)
2. Je dois avouer que je ne comprends absolument pas certaines parties du code (ligne 13, ligne 18 & lignes 22/23).

Sub Majour_BD()
    Dim PlageF As Variant, derlig, Sem
    Dim derco, ad As String
    
    With Worksheets("Formulaire")
        derlig = .Range("A" & Rows.Count).End(xlUp).Row
        PlageF = .Range("A4:E" & derlig).Value
        Sem = .Range("D1")
    End With
    With Worksheets("BDD")
        'cherche le nom (la lettre) de la colonne
        derco = .Cells(1, Columns.Count).End(xlToLeft).Column
        LC = Split(Cells(8, derco).Address, "$")(1) 
        If Application.CountIf(.Range("C1:" & LC & "1"), Sem) = 0 Then
            derco = derco + 1
            .Cells(1, derco) = Sem
            'ID  Questions   Oui Non NA
            Nb = UBound(PlageF) 
            If Nb > -1 And PlageF(1, 2) <> "" Then
                For N = 1 To Nb
                    lig = 2
                    lig = .Columns(1).Find(PlageF(N, 1), .Cells(lig, 1), , xlWhole).Row 
                    If PlageF(N, 3) <> "" Then
                        .Cells(lig, derco) = "Oui"
                    ElseIf PlageF(N, 4) <> "" Then
                        .Cells(lig, derco) = "Non"
                    ElseIf PlageF(N, 5) <> "" Then
                        .Cells(lig, derco) = "NA"
                    Else
                    End If
                Next N
            End If
        Else
            MsgBox "Semaine deja enregistree !!!!"
        End If
    End With
    Set PlageF = Nothing
End Sub


En tout cas, un GRAND MERCI pour votre aide 
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Re,
1) il faut que la question soit dans la BDD et quand vous ecrivez colonne A Qx (faudra se rappeler le x ) , le texte de la question s'affiche en colonne B

2) demain je commente les lignes
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326
Bonjour,

commentaires ligne code et test ID n'existe pas dans BDD

https://www.cjoint.com/c/FFwfRig6y1f
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Merci pour les commentaires je comprends un peu mieux le fonctionnement.

J'ai compris ce que faisait le code maintenant, ! (Gestion via la BDD).
Je vais devoir m'organiser un peu différement pour l'utilisation du fichier (je ne pensais pas donner l'accès à la BDD aux utilisateurs, mais ils en auront besoin pour connaître l'ID des questions) mais ça devrait faire l'affaire.

En espérant que maintenant j'arrive à tranposer la macro dans mon vrai fichier qui lui comporte plusieurs onglets "formulaires" mais une seule BDD.

Encore merci pour l'aide et le temps que vous m'avez consacré.

Bonne journée,
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Re,

(je ne pensais pas donner l'accès à la BDD aux utilisateurs, mais ils en auront besoin pour connaître l'ID des questions) Vous avez mal exprime votre besoin, pour moi c'est le gestionnaire qui mettait les questions pour les utilisateurs. La programmation aurait ete differente. Depuis quand un utilisateur pose les questions ???? Pas normal ca !!!!!
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Re,

Je reconnais que je n’ai pas su exprimer mon besoin clairement.
La définition que nous avons de gestionnaires / utilisateurs est un peu biaisée aussi (dû à un manque d’information de ma part), comme je l’ai dit dans mon dernier message, mon fichier comporte plusieurs formulaires. Il y a une personne « en charge » pour chaque formulaire : c’est cette personne qui choisit les questions de son formulaire, qui est remplit par la suite par des utilisateurs. Sauf que pour moi cette personne qui est « en charge » des formulaires est un utilisateur aussi et je suis le seul gestionnaire or pour vous cette personne est le gestionnaire. Mais disons que certains d’entre eux ne sont pas à l’aise sur Excel, voilà pourquoi je voulais leurs faciliter la tâche avec une implémentation automatique des questions dans la base de données, après modification sur le formulaire.
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Après quelques essais, la solution proposée par f894009 ne me permet pas de faire ce que je souhaite.
Je relance donc le sujet en espérant qu'une autre solution soit possible.

Merci d'avance.
Bonne journée,
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326
Bonjour,

Voyons la chose differemment:

Pas d'acces a la base d'enregistrement

mon fichier comporte plusieurs formulaires. combien a un pret

c’est cette personne qui choisit les questions de son formulaire
ces questions sont predefinies ou il ecrit portnawac ??

Que se passe-t-il si la meme question est posee par plusieurs la meme semaine ?
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,
Il y a un formulaire par zone dans l’usine pour simplifier. Je dirais donc 8 formulaires, soit 8 onglets. Je me sers du nom de l’onglet pour distinguer les questions de chaque zone. (J’ai ajouté une colonne « zone » dans ma BDD)

Rien n’est prédéfini, le responsable de chaque zone choisit ses questions en fonction des soucis de la semaine précédente, des points critiques pour la semaine à venir ou simplement de son envie. Il se peut donc que la même question se retrouve dans plusieurs formulaires et ce pendant plusieurs semaines.

Pour donner un exemple concret, si à la suite d’une visite dans l’usine quelqu’un rapporte qu’il y avait un stockage devant une porte de secours (ce qui est interdit) la question « l’accès aux portes de secours est-il dégagé ? » est une question qui va apparaitre sur toutes les zones et ce pendant 1, 2, 3 ou 10 semaines en fonction de l’évolution de la situation. Cette question va ensuite disparaitre de telle ou telle zone pour peut-être revenir 2 mois plus tard. En revanche, si elle revient 2 mois plus tard le texte sera EXACTEMENT le même, la question NE DEVIENDRA PAS « les portes de secours sont-elles encombrés ? » par exemple.
C’est un point sur lequel j’ai beaucoup insisté pour me faciliter la vie lors de mes stats de fin d’année.
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Un petit up de plus sur mon sujet.

Bonne journée,
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326
Bonjour,

Vous pourriez mettre votre nouveau fichier a dispo pour la partie zone ???
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020

Re,

en attendant plus de details, fichier modifie pour enregistrement BDD2 et BDD1

reponse (Oui, Non, N-A) par clic gauche sur cellules (bascule), avec une seule reponse par question. Je prefere clic droit mais la plupart des utilisateurs clic gauche donc

https://www.cjoint.com/c/FGhqdjxJghf
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Re,

Je ne suis pas sûr de comprendre quel est le problème exactement ?

La distinction par "cartégorie" (Qualité, Sécurité ou Environnement) n'est pas nécessaire mais peut-être un plus. Si dans votre exemple au dessus, le souci est que la question "Fait-il beau ?" est considérée comme différente car elle est dans une autre catégorie, cela ne me gène pas car cette situation ne se produira pas et dans le pire des cas, la distinction serait légitime.
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Re,
Y a pas de problème, à vous de tester et dites ce qu'il faudrait faire évoluer ou changer!!
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Un grand merci avant tout, pour tout le temps et l'énergie que vous m'avez consacré.

A première vue, le fonctionnement me semble très satisfaisant  Et j’aime beaucoup l’ajout que vous avez fait dans le formulaire (le clic qui écrit directement Oui / Non / NA) même si je pense que ce point peut-être légèrement améliorer (changement direct si il y a un clic sur une autre colonne + verrouillage de la feuille pour éviter que les utilisateurs mettent des « X » dans les colonnes comme ils le faisaient jusque maintenant). J’espère réussir à faire cette modification moi-même.
Bref, je vais transposer cela à mon fichier et laisser les utilisateurs faire les tests. Je ne clôture pas le sujet pour le moment, je viendrais donner un retour courant de semaine prochaine.

Encore merci !
Bon week-end.
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Bonjour,

même si je pense que ce point peut-être légèrement améliorer

Le but de la chose etait de vous monterez une saisie auto avec souris, ensuite vous avez tout loisir de faire evoluer pour limiter au max les saisies incongrues
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Bonjour,

Suite à quelques tests et quelques modifications sur le fichier dans le but d’harmoniser les formulaires et de simplifier le code j’ai à nouveau besoin d’aide.
J’ai essayé de modifier le code pour n’avoir plus que le report d’une seule colonne, celle qui est masquée dans le formulaire en G (au lieu des 3 autres). Mais en vain, je ne comprends pas plus de la moitié des étapes du module 2… 
Il y a également un souci au niveau du report, même si l’intitulé de la question ne change pas, une nouvelle ligne s’ajoute à chaque fois et parfois le numéro de semaine n’apparait pas.

J’espère que vous pourrez m’aider. Je remets évidemment une version à jour de mon fichier : http://www.cjoint.com/c/FGtm6f4yaPV

Merci d’avance
Bonne journée,
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020

Re,

En attendant par pas de 3

https://www.cjoint.com/c/FGtoEmLk72f

reste si enregistrement sur semaine anterieure ajout semaine !!!!!
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Re,

Actuellement dans l'onglet BDD, 3 colonnes (par exemple : DEF pour semaine 28, GHI pour semaine 29, JKL pour semaine 30, ...) servent à une seule date car les cellules sont fusionnées pour chaque semaine car avant les 3 colonnes (DEF) des formulaires étaient reportées. J'aimerais que maintenant il n'y est dans l'onglet BDD qu'une seule colonne dédiée par semaine car il ne faut plus reporter qu'une seule colonne des formulaires (G). Ce qui donnerait donc par exemple : colonne D pour semaine 28, colonne E pour semaine 29, colonne F pour semaine 30, ...

En revanche je ne parviens pas à mettre le doigt sur les modifications apportées par la version que vous venez de m'envoyer ?

Encore merci pour votre aide !
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018

Re,

Ok

En revanche je ne parviens pas à mettre le doigt

Peut-etre que le doigt est trop gros !!!!!

Entre votre fichier actuel et le precedent, il y a une colonne en moins (Rubrique) ce qui explique les decalages colonnes et ajout meme questions
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020
1 326 >
Messages postés
15271
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
12 août 2020

Re,

Nouvelle semaine pas de 1

https://www.cjoint.com/c/FGtpzCV4c3f
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
16
Re,

Un grand merci pour toute votre aide, cette fois tout marche à merveille !! :)

Bonne journée,
A bientôt.