Création d'une base de donnée a partir d'un questionnaire

Point 1: ok pour la proposition

Point 2: renommer norme

Ok. C'est corrigé

1. J'ai aussi donné le nom Section au tableau où sont mentionnées la section et force de traction. Ok pour vous ?

2. Quel nom voulez-vous donner au tableau où se trouvent les conditions d'essai (température, Humidité, vitesse..) --> Normes ou Conditions Essai ?

3. Dans la feuille Formulaire, on a des rubriques C21, C30? ... pour mentionner la Force minimum --> C'est vous qui complétez manuellement où cela doit être le résultat d'une formule ?

1) ok

2) condition d'accès

3) la pince est associé a une norme (NF C 20-130, NF C 63-023, NF EN 60352-2, NF F 00-363) et la section dans la cellule C21 (choisi par l'opérateur avec les menu déroulant). La force de rupture mini est défini a l'aide du tableau Norme /section/ Force de traction

Point 3 :

La force de rupture mini est défini a l'aide du tableau Norme /section/ Force de traction

Donc les infos Force de rupture mini en E21, E39... sont celles mentionnées en colonne Force de traction et ce en fonction de la section choisie en liste déroulante. Correct ?

Autre point : Dans la base de données je viens de voir qu'il y a des colonnes masquées : Force de traction min, section fils. Cela sert à quoi dans votre projet ?

Point trois oui c'est bien ça avec la norme associé

les colonnes masqués sont des colonnes qui sont plus utilisé que je voulais supprimer par la suite.

Je les avait créer et modifié le cahier des charge par la suite donc plus utile.

Je les avait créer et modifié le cahier des charge par la suite donc plus utile.

Ok je les ai supprimées et j'en ai terminé
Reste maintenant la feuille Rapport et Bilan. Là il faudrait que vous m'expliquiez

Dans un précédent message, vous écrivez ceci

-Je voudrais également modifier la macro pour que lorsque je clique sur le bouton valider le contrôle, un fichier PDF s'ouvre avec le contenu de l'onglet rapport. Si -possible un enregistrement du fichier dans un dossier " Rapport" et intitulé Date du jour_Numéro

1. Rapport :
- j'imagine que ce sont les infos en bleue pour instrument vérifié seront des données inscrites via des formules venant des autres feuilles en fonction du numéro d'identification.
- Pour les conditions de mesure : la température, l'humidité et le type d'essai sont pêchés où ?
- Idem pour les résultats de mesure : on prend les valeurs en feuille Saisie je suppose. Par contre Force de rupture et Traction ?

2. PDF
- Pour l'enregistrement du rapport. Faire un PDF n'est pas un souci. Par contre je dois savoir quel est le répertoire de sauvegarde ou plutôt où il est situé par rapport au fichier Cahier charges. Pour faire simple, on peut imaginer, une structure comprenant un dossier qui contient :
---> Le fichier cahier des charges
---> un dossier qui reprend tous les rapports

Bonjour

le rapport ce complète bien par le formulaire

- Pour les conditions de mesure : la température, l'humidité et le type d'essai sont pêchés où;: température dans le formulaire et humidité dans le formulaire. Température mini/max et humidité min/max selon la norme

Pour le PDF:

chemin d'accès du fichier excel: W /controle/ Traction

chemin d'accès du fichier PDF : W /controle/ Traction/année

Noms du fichier: date au format AAAAMMJJ- numéro identification

Bonjour,

Merci d'utiliser l'icone citation ( " ) disponible dans la barre de menu, lorsque vous recopiez un texte venant d'un post précédent


- Pour les conditions de mesure : la température, l'humidité et le type d'essai sont pêchés où;: température dans le formulaire et humidité dans le formulaire. Température mini/max et humidité min/max selon la norme

Ok mais je parlais aussi des rubriques F23 à G25 dans le rapport "Vitesse de traction" et il y a aussi G16

Pour les répertoires en voyant le séparateur que vous utilisez ( / ), vous êtes sous windows ou sous excel MAC ?

Sinon j'ai presque terminé mais il reste la feuille Bilan. Pouvez-vous me dire si je dois faire quelque chose et si oui, me donner quelques explications
Une fois fait je vous renvoie le fichier

Crdlt

Pour les cases:
- F23 correspond a la valeur dans formulaire de saisi cellule E21

- F24 correspond a la valeur dans formulaire de saisi cellule E30

- F25 correspond a la valeur dans formulaire de saisi cellule E39

- G23 correspond a la valeur dans formulaire de saisi cellule H21

- G24 correspond a la valeur dans formulaire de saisi cellule H30

- G25 correspond a la valeur dans formulaire de saisi cellule H39

- H23 ne vous embêter, j'ai la formule pour sur le dernier fichier sur le quel j'ai bosé

- Pour l'onglet bilan, je voyais un archive des informations en plus du pdf

Ok c'est bon

H23 ne vous embêter, j'ai la formule pour sur le dernier fichier sur le quel j'ai bosé

J'ai aussi fait ce point et vous n'avez plus d'info en colonne I23 à I26 qui sont supprimées
exemple H23 avec cette formule --> =SI(ET($C23="conforme";$D23="conforme";$E23="conforme";$F23<$G23);"Conforme";"Non Conforme")

NB: Et C31 devient ceci --> =SI(ET($H$23="conforme";$H$24="conforme";$E$24="conforme");"Conforme";"Non Conforme")

Pour l'onglet bilan, je voyais un archive des informations en plus du pdf

Ok je vais voir pour compléter la feuille Bilan. On peut la compléter en même temps que le PDF.

nickel merci

Bonjour

Votre fichier en retour.

Quelques explications :

1. feuille Références
Le fichier est modifié comme suite à nos conversation et donc vous n'avez plus que cette feuille pour toutes vos références
Toutes Les données dans les listes déroulantes viennent des infos que vous complétez dans la feuille Référnces.

2. feuille saisie - Nouveau contrôle

- une liste déroulante pour le choix du vérificateur
- une liste déroulante pour le choix du num d'identification
- une liste déroulante pour le choix de la section. Cette liste est créée automatiquement sur base du choix du num d'identification
Dès que vous faites votre choix dans la liste section, la force de rupture mini est affichée

Le bouton "Valider le contrôle" envoie les infos dans la feuille Bilan
La suppression du numéro d'identification, efface les données de la feuille Saisie - espace "Nouveau contrôle"

3. feuille saisie - Nouvel équipement

Les données dans les listes déroulantes viennent des infos que vous complétez dabs la feuille Référnces
Le bouton envoie les infos dans la feuille Base données

4. feuille Rapport
Elle est remplie via formules mises en place et ce sur base de ce que vous complétez dans la Saisie.
Le rapport est vide si vous n'avez pas d'identifiant mentionné en Saisie.
Vous avez deux boutons disponibles.
- Le bouton Bilan envoie les infos sur la feuille Bilan
- Le bouton PDF qui crée le rapport et l'envoie dans le répertoire que vous m'avez donné.

5. Rem :

- petit conseil : vu que le numéro de rapport mentionne l'année (aaaammjj...), je n'aurais pas créé un dossier par année. Cela est inutile et en cas de recherche il vous suffit de faire une recherche sur l'année pour avoir tous les rapports.
Si vous le décidez, allez dans la sub PDF et supprimez "année\" dans cette ligne au début du code --> repertoire = .path......

- Les tableaux des feuilles References, Base et Bilan contiennent des tableaux au format structuré. Veillez à ne jamais avoir de lignes sans données. Si vous devez ajouter une donnée, il vous suffit de l'ajouter juste en dessous de la dernière du tableau et elle sera automatiquement reprise dans le tableau structuré.
Exemple : en feuille Références, colonne C. Il suffit de rajouter la nouvelle info en C4.
Pour supprimer une donnée, sélectionnez une cellule de la ligne à supprimer, puis clic droite --> Suuprimer -> "Ligne de tableau" (vous devez toujours voir "lignes de tableau" dans le cas d'une suppression de ligne d'un tableau au format structuré)

ouf... j'ai été long là...

Si question n'hésitez pas et si ok et terminé pensez à cloturer le fil

Crdl

Bonjour

Merci pour votre superbe travail,

Je vois plusieurs remarques :

  • Les observations ne se reportent pas sur le rapport
  • Les valeurs de la températures et hydrométrie saisi dans le formulaire doivent se reporter dans les cellules B13 et G13
  • J’aurais voulu que lorsque l’on cliquer sur valider cela complète automatiquement le rapport et le bilan (fusion du bouton valider le contrôle, bilan et PDF)
  • Cellule L27 du formulaire compléter la valeur en fonction de la cellule L18 et du tableau colonne E de l’onglet référence. En laissant la possibilité du menu déroulant si le type de pince n’existe pas
  • Dans l’onglet bilan le numéro de contrôle n’est pas bon, je partirai sur le nom du fichier lors que la génération du PDF qu’il faudrait afficher également sur le rapport

Re

1. Les observations ne se reportent pas sur le rapport

Oui je ne savais pas trop. Mettez cette formule en A28 dans la feuille Rapport --> =SI(OU(ESTVIDE(Identifiant);ESTVIDE('Formulaire de saisie'!$C44));"";'Formulaire de saisie'!$C$44)


2. Les valeurs de la températures et hydrométrie saisi dans le formulaire doivent se reporter dans les cellules B13 et G13

Je n'ai pas compris ?. Il y a une formule dans les deux cellules. Les deux infos viennent de C12 et H12 de la feuille Saisie que vous devez compléter


3. J’aurais voulu que lorsque l’on cliquer sur valider cela complète automatiquement le rapport et le bilan (fusion du bouton valider le contrôle, bilan et PDF)

Ok. Alors gardez le bouton Bilan puis allez dans l'édieur VBA - Module Sauvegarde. Juste avant le END SUB de la macro bilan, ajoutez cette instruction

Call PDF

Si vous voulez renommer la macro on peut aussi le faire. A voir ce que vous voulez


4. Cellule L27 du formulaire compléter la valeur en fonction de la cellule L18 et du tableau colonne E de l’onglet référence. En laissant la possibilité du menu déroulant si le type de pince n’existe pas

Je n'ai pas compris. Ce n'est pas le contraire ? C'est à dire qu'en fonction de L18 vous voudriez que L27 soit complétée en gardant la liste déroulante de choix dans L27 ?


5. Dans l’onglet bilan le numéro de contrôle n’est pas bon, je partirai sur le nom du fichier lors que la génération du PDF qu’il faudrait afficher également sur le rapport

je n'ai pas compris ce que vous voulez dire.
Le numéro de contrôle est le numéro de fichier du PDF ?
Si oui, il ne faut pas mettre CALL PDF comme je vous ai indiqué ci-dessus au point 3
Dites-moi

1) Je viens de tester ça marche Problème réglé

2) j'ai retaper la même formule et ça a fonctionner, je ne sais pas ce qui c'est passé Problème réglé

3) J'ai modifié le code cela me marque Erreur d'exécution '1004'

4) oui fonction de L18, L27 soit complétée en gardant la liste déroulante de choix dans L27

5) Numéro de contrôle = AAAAMMJJ n°identification (soit le noms du fichier PDF)

On y va step by step

4) oui fonction de L18, L27 soit complétée en gardant la liste déroulante de choix dans L27

- clic droite sur l'onglet "Formulaire de saisie"
- choisir "visualiser le code"
- dans le code, juste avant le END SUB, rajoutez ces lignes

If Not Intersect(Target, Range("L18")) Is Nothing Then
    Call ajout_norme_nouvel_equipement(Target)
End If

- dans l'éditeur VBA, cliquez sur le module Ajout (vous devriez voir deux codes Sub nouveau_equipement() et Sub Valider_controle()
- Juste après le END SUB du code Sub nouveau_equipement(), rajoutez le code ci-dessous

Sub ajout_norme_nouvel_equipement(Target As Range)
Dim lig As Integer

If Target = vbNullString Then Feuil1.Range("L27").ClearContents: Exit Sub
With Range("Tab_pince").ListObject
    On Error Resume Next
    lig = .ListColumns(1).Range.Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole).Row - .HeaderRowRange.Row
    If lig = 0 Then MsgBox "Norme non trouvée pour cette pince", vbCritical, "Norme inexistante": Exit Sub
    On Error GoTo 0
    Feuil1.Range("L27") = .DataBodyRange(lig, 2)
End With
End Sub

Faites un test


3) J'ai modifié le code cela me marque Erreur d'exécution '1004'

Il ne fallait pas corriger comme je vous l'avais écrit à la fin de mon post précédent
mais avec l'erreur le code s'arrête sur quelle ligne ?

Bonjour

J'ai pas mal avancer sur le fichier et modifié plusieurs éléments.

Cependant il reste plus qu'un souci, l'enregistrement du fichier en PDF du rapport.

Je voudrais que l'enregistrement soit intégrer au bouton de validation (présent dans le formulaire de saisie)

De plus lorsque j'appuyai sur le bouton PDF le fichier ne se fesait pas.

Ci-joint la dernière version avec l'ensemble des modif que j'ai apporté

Dernier point qui serait top est que lorsque l'on supprimer le numéro d'identification (cellule L5) cela pourrait suprimer l'ensemble

Cordialement

Bonjour

De plus lorsque j'appuyai sur le bouton PDF le fichier ne se fesait pas.

Je ne sais pas ce que vous avez fait mais de mon coté je n'avais aucun souci
Dans mon dernier message je vous ai posé une question à laquelle vous n'avez pas répondu. Donc normal que le pdf ne se faisait pas car j'avais des infos à vous donner pour modifier votre fichier.

Je voudrais que l'enregistrement soit intégrer au bouton de validation (présent dans le formulaire de saisie)

A.code Sub Valider_controle

1. En dessous des déclarations Dim as ..., rajoutez ceci

Dim nomfichier As String

2.juste en dessous de With .DataBodyRange, remplacez la ligne par celle-ci

.Item(lig, 1) = Format(Now, "yyyy-mm-dd") & "_" & Range("identifiant") 'numero de controle

3. A la fin, juste après la ligne .Item(lig, 26) = Feuil1.Range("C44").Text 'Observation, ajoutez cette ligne

nomfichier = .Item(lig, 1) 'nom fichier

4. juste avant le END SUB, rajoutez cette ligne

Call PDF(nomfichier)

REM : il faut toujours éviter les accents dans les codes. Cela risque de vous apporter des problèmes. Pensez toujours Anglais avec VBA


B. Sauvegarde PDF

Pour le code PDF je vois que vous l'avez déplacé dans le module Ajout alors qu'il était dans Sauvegarde.
L'idée du module Sauvegarde concernaient les codes de sauvegarde du fichier.
Le module Ajout concernait les codes pour l'ajout de données dans votre fichier
A vous de voir mais j'aurais placé le code PDF dans le module Sauvegarde.

Remplacez le code PDF par le code ci-dessous (supprimez le code PDF dans le module Ajout)

Sub PDF(nomfichier As String)
Dim repertoire As String, identifiant As String

With ThisWorkbook
    repertoire = .Path & "\Traction\année\" 'repertoire de sauvegarde eventuellement à adapater

    .Worksheets("Rapport").ExportAsFixedFormat Type:=xlTypePDF, Filename:=repertoire & nomfichier & ".pdf", _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False 'sauvegarde PDF
End With
End Sub

A vérifier pour chacune mais les lignes 52 à 58 ne servent pas dans le formulaire de saisie. La ligne 60 peut être supprimée puisqu'elle est dans le code.

Autre point à corriger dans votre fichier V3
- Allez dans la feuille Bilan
- Sélectionnez uniquement A2 à Z2 (donc les cellules qui font partie du tableau)
- clic droite et choisir "Supprimer" --> "Lignes de tableau" (veillez surtout à voir l'option "Ligne de tableau")
Ne vous occupez pas des formules et MFC éventuelles, si vous respectez la manière de supprimer comme je vous l'indique, tout reste en place dans le tableau même si vous ne le voyez pas.


Dernier point qui serait top est que lorsque l'on supprimer le numéro d'identification (cellule L5) cela pourrait suprimer l'ensemble

Actuellement le code nouveau_equipement, supprime déjà l'ensemble. Si je comprends vous voulez un plus à savoir que si vous supprimez L5 manuellement cela supprime aussi l'ensemble ?

J'ai fais l'ensemble des modifications

Lorsque je clique j'obtiens une erreur d'exécution '1004' voir photo ci-dessous

Dossier adresse du fichier excel C:\Users\utilisateur\Documents\Traction

Dossier adresse des rapport (enregistrement PDF) C:\Users\utilisateur\Documents\Traction\Rapport

image

Le code ne trouve pas le répertoire défini ici https://forum.excel-pratique.com/s/goto/1236158
Je vous avais suggéré d'éviter l'année dans le point 5 de ce post -> https://forum.excel-pratique.com/s/goto/1236461 . Ce que vous avez fait mais on n'a plus reparlé de votre changement. Je n'ai donc pas modifié dans mon post précédent

Là juste avant la ligne surlignée, la variable "repertoire" est définie comme ceci --> repertoire = .Path & "\Traction\année\"
Si vous passez votre souris sur "repertoire" dans la ligne colorisée pour le voir

Par rapport à ce que vous me donnez comme info, modifiez comme ceci :

repertoire = .Path & "\Traction\Rapport\" 

Cela devrait fonctionner

Rechercher des sujets similaires à "creation base donnee partir questionnaire"