Je viens vers vous aujourd'hui afin de quérir votre aide pour un fichier assez difficile à créer (enfin très difficile pour moi). On m'a dit qu'il était impossible de le faire sous excel qui ne serait pas assez poussé pour réaliser ce fichier.
Je cherches à créer un fichier excel (obligatoire on m'impose cet outils et interdiction d'utiliser Access :s)
Je souhaiterais avoir différentes rubriques à savoir :
nom
prenom
lieu
service
poste
date visite
motif visite (plusieurs choix dont autre avec possibilité d'écrire)
prochaine visite (soit obligatoire et là en fonction du post il donnerait la fréquence (exemple tout les 3 mois)) ou alors une date que l"on écrit soit même)
contre indication (jour/nuit ; charge lourdre ; position de travail ; autres)
J'ai déjà modifié un fichier pour avoir une incrémentation automatique à la suite dans un tableau excel (je peux reprendre le fichier)
Mais là j'aurais voulu pouvoir taper par exemple un numéro (qui serait associé à chaque personne) afin que dans le formulaire moi je tape ce nombre et il me redonne toutes les données sur la personne correspondant au numéro. Puis qu'une fois mes modifications faites, je valide et que cela modifie les données existantes et non pas rajoute une ligne.
Je sais que je demande quelque chose de très très poussé, mais sachant que je vais devoir faire cela pour un nombre très important de personne je souhaiterais automatiser pour faciliter le travail par la suite...
Je remercie d'avance toutes les personnes qui apporteront leur aide, et celles qui passeront lire également.
Cependant je ne reconnais plus du tout mon code et ne le comprend absolument pas :s aucun test, il ne test que quelques valeurs bref je n'y comprend plus rien.
Et malgré toutes les modifications le problème des textbox autres n'est pas résolu. Je tente de mettre embauche à la place j'ai une case vide :s
Idem pour autres dans conclusion.
Donc avant de me pencher sur la partie modification je vais déjà tenter de comprendre ton code (bah oui là c'est plus le mien hihi) et surtout voir pourquoi ça ne marche toujours pas.
Et il me dit des choses incorrecte pour le nombre d'informations rentrées "vous avez sélectionnés 3 informations" alors que j'ai mis que embauche et qu'il ne l'affiche pas.
Et pour modifier je ne m'y suis pas encore penché mais il ne reprend que les premières informations c'est normal ?
Et j'aimerais faire une recherche par nom et prénom plutot que matricule (plus pratique)
Le test ce fait dans ces lignes (modifiée car bug)
Code:
On Error Resume Next ' Evite les erreurs d'objet
For I = 1 To 9
If Me("TextBox" & I).Value <> "" Then Test = Test + 1
[COLOR=Blue]If Err.Number <> 0 Then Test = Test - 1: Err.Clear[/COLOR]
Next I
For I = 1 To 3
If Me("Combobox" & I).Value <> "" Then Test = Test + 1
[COLOR=Blue] If Err.Number <> 0 Then Test = Test - 1: Err.Clear[/COLOR]
Next I
For I = 1 To 12
If Me("CheckBox" & I).Value = True Then Test = Test + 1
[COLOR=Blue] If Err.Number <> 0 Then Test = Test - 1: Err.Clear[/COLOR]
Next I
On Error GoTo 0
Comme j'ai : On Error Resume Next
En cas d'erreur le code continue, sauf qu'il compte un test Dans ma modif, je déduit donc un test si le code erreur est différend de 0
Je suis vraiment navré, mon code me semblait simple à comprendre
Au lieu de tester un par un les controles, je fais des boucles ...
Yann, je vais continuer le fichier car j'ai l'impression (à tort peut être) qu'il sera bientot opérationnel. Je chercherai par la suite à faire le même style que le tiens
J'ai trouvé l'origine de l'autre problème cétait dans l'incrémentation il y avait :
que je comprenais pas. Le but je comprenais mais pas pourquoi cette écriture
Bon je vais dormir
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
Bonjour, j'édite pour apporter les nouvelles informations.
Pour reprendre les valeurs dans la base de données c'est cette partie là ?
Private Sub Cb_ChoixMat_Change()
Dim NumLig As Long, VBdD As String
NumLig = Me.Cb_ChoixMat.ListIndex + 1
With Sheets("BdD")
VBdD = .Cells(1 + NumLig, 3)
For I = 1 To 3
If Me("OptionButton" & I).Caption = VBdD Then
Me("OptionButton" & I).Value = True
End If
Next I
For I = 2 To 4
Me("TextBox" & I).Value = .Cells(1 + NumLig, 2 + I)
Next I
End With
End Sub
Est il possible de mettre des ComboBox à la place de noms et prénoms ? Avec comme choix tout les noms et prénoms de la BdD ? Car je ne connais pas l'intégralité des noms dans la BdD :s
Je cherche pour ma part comment faire pour la partie " modifier " et si il est possible de passer de textbox en mode nouveau à des combobox en mode modifier ?
If Me("OptionButton" & I).Value = True Then
MonChoix = Me("OptionButton" & I).Caption
If InStr(1, MonChoix, "Autre", vbTextCompare) > 0 Then
MonChoix = Me.TextBox7.Value
End If
Test = Test + 1
End If
OBChoix(4) = MonChoix
Tout simplement pour taiter le cas "Autre"
1) MonChoix prends la valeur du libellé de l'Optionbutton
2) Si MonChoix contient le terme "Autre" alors MonChoix doit prendre la valeur de la TextBox
Je ne comprend pas pourquoi on reprend 1 à 3, puis 2 à 4 alors qu'en bas tu as regroupé 1 à 3, 4 et 5 etc....
Dans la sub Cb_ChoixMat_Change()
Je viens récupérer les informations de la BdD, donc il faut traiter tous les controles : Optionbutton, Textbox, Checkbox, etc ..
Dans la sub CommandButton1_Click()
On traite simplement en premier les Optionbutton
For I = 2 To 4
Me("TextBox" & I).Value = .Cells(1 + NumLig, 2 + I)
Next I
For I = 2 To 4 : Pour les Textbox de 2 à 4 Me("TextBox" & I).Value : La valeur du TexBoxI .Cells(1 + NumLig, 2 + I) = .Cells(Row, Column) = la valeur de la cellule ligne numéro : 1+ NumLig, colonne numéro 2 + Valeur de I
Si tu ne comprends pas ce genre d'instruction archi simple, il y a vraiment soucis .... Je me suis peut-être trop avancé dans mon code
Pense à regarder l'aide sur ces instructions, c'est instructif ...
Est il possible de mettre des ComboBox à la place de noms et prénoms ? Avec comme choix tout les noms et prénoms de la BdD ? Car je ne connais pas l'intégralité des noms dans la BdD
Bonjour evilfire, Bonjour Bruno et à ceux qui passeront par là.
Bravo evilfire pour tes progrès impressionnants.
Bravo Bruno pour ce que tu fais.
J'aime beaucoup ce proverbe chinois:
"Donne un poisson à un homme; il se nourrira ce jour.
Apprends lui à pêcher; il se nourrira toute sa vie"
Quel bel exemple ici !!!
A evilfire:
Si dans le cadre d'un autre projet tu reviens sur ma façon de faire, fais moi signe au besoin.
Je serai disponible pour apporter les commentaires nécessaires quant à la méthode.
Très beau proverbe, que j'essaye toujours de mettre à profit
J'aime aussi celui-ci :
Si nous avons chacun un objet et que nous les échangeons, nous avons chacun un objet. Si nous avons chacun une idée et que nous les échangeons, nous avons chacun deux idées
Bien vu! Il est vrai!
Mais je ne parlais pas vraiment ici de l'origine, mais de son utilisation.
(Le seul site que j'ai visité; c'est ma mémoire...! Désolé!!!)
On ne va pas envahir ce post avec de telles considérations.
Bon bah j'ai passé ma soirée dessus pour...rien XD
Je n'arrive pas à faire le modifier.
J'ai étais voir le site conseiller j'ai trouver plusieurs code qui m'intéresse (combobox nom + prénom |et| trier une liste afin de mettre les noms et prénoms dans l'ordre) mais impossible pour moi à les combiner avec le code actuel.
J'ai essayé de modifier le début du code mais quand je lui dis text box I = 1 To 1 (comme je veux faire les modifs en recherchant le nom il faut qu'il y ai le matricule qui soit repris dans la BdD) mais il me met une erreur.
Là j'avoue je bloque (encore me direz vous) et je tombe de fatigue, donc je vais me coucher déçu de ne pas avoir avancer mais bon... Espérons que demain soit de meilleure augure.
Bon et bien je viens de retenter pendant 3h d'adapter le fichier modifier pour rechercher via une combobox où apparaitrai le nom et prénom des personnes déjà saisie mais c'est encore un échec...
Je vais donc surement être obliger de leur présenter via le formulaire "tout fait" d'excel ^^'
Mais je chercherai encore demain soir, là je bosse mon mémoire maintenant :s