Excel Base de données et VBA

evilfire

XLDnaute Nouveau
Bonjour à toutes et à tous,

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.

Merci d'avance

J.R.
 

YANN-56

XLDnaute Barbatruc
Re : Excel Base de données et VBA

Re Bonjour Evilfire, Bruno et à ceux qui passeront pat là.

Il est vrai que notre ami avance bien! Voici là un futur adepte de XLD :)

Sans doute me suis-je trompé de voie en bidouillant ce que je joins.

Il reste à enregistrer les modifications apportées dans les TextBoxes,
et l'option de création d'une nouvelle personne.(Pas trop difficile)

Le Double click sur la ListView initialise les TextBoxes,
et le click sur le Bouton "+/-" montre de début ou la
fin de la liste.

Au plaisir de suivre ce fil.

Yann
 

Pièces jointes

  • VISITE.zip
    27.3 KB · Affichages: 243
  • VISITE.zip
    27.3 KB · Affichages: 179
  • VISITE.zip
    27.3 KB · Affichages: 252
C

Compte Supprimé 979

Guest
Re : Excel Base de données et VBA

Re,

Ci-joint ton fichier modifié selon mes indications
J'ai commencé à te mettre la procédure pour modification ;) au boulot ...

A+

Edit : Oups, yann désolé je n'avais pas vu ta réponse ;)
 

Pièces jointes

  • Evilfire_Fichier_suivi_visite_excel2.zip
    36.7 KB · Affichages: 402

YANN-56

XLDnaute Barbatruc
Re : Excel Base de données et VBA

Bruno,

Je suis en attente de ton avis, pour savoir s'il peut être utile que je persiste ou non

Amicalement

Yann

AJOUT:
Je me suis rapproché de Bruno pour savoir si j'étais bien dans le sens de ce que tu cherches à faire.

J'ai déposé ici un exemple que j'avais construit pour une autre personne.

Cela est différent, mais dans l'esprit.

Tous les boutons ne marchent pas… Je n'avais pas fini!

A noter qu'il faut cliquer sur la droite de référence Photo, de civilité pour qu'un choix te soit proposé.

Peut-être ce truc te servira plus tard.

Je te laisse avec lui……….Tu es entre de bonnes mains.

Au plaisir de te croiser ici, ainsi que Bruno.

Yann

Dossier joint, si cela fonctionne?

http://cjoint.com/?eosGyVxeUh
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Excel Base de données et VBA

Yann,

wouahouu pas mal du tout celui là ;):eek:

En revanche, je pense que c'est trop loin de ce qu'à commencé à faire Evilfire :eek:
Attendons son retour ...

Perso, je mets ça dans mes tablettes :p

A+
 

evilfire

XLDnaute Nouveau
Re : Excel Base de données et VBA

Bonsoir,

Merci à vous deux pour votre aide.

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)

Est ce possible ?

Désolé de vous embêtez

Merci encore

Evilfire

Si vous avez des idées ^^
 
C

Compte Supprimé 979

Guest
Re : Excel Base de données et VBA

Re,

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 :eek:

Au lieu de tester un par un les controles, je fais des boucles ...

Fichier modifié ci-joint

A+
 

Pièces jointes

  • Evilfire_Fichier_suivi_visite_excel2.1.zip
    39.8 KB · Affichages: 124

evilfire

XLDnaute Nouveau
Re : Excel Base de données et VBA

Entendu Merci,

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 :

.Cells(Ligne, 15).Value = OBChoix(5)
.Cells(Ligne, 15).Value = TextBox9

Donc forcément là il prenait ob mais après remplacé par la Textbox9 ^^'

Désolé là c'est moi qui aurais du le comprendre plus vite.

C'est les
MonChoix = Me("OptionButton" & I).Caption
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

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....

.cells(+1 NumLig, 2+I)
Que signifie cette syntaxe

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 ?

Merci d'avance ;)
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Excel Base de données et VBA

Salut Evilfire,

Quand tu ne comprends pas une syntaxe, cherche dans l'aide ;)

Monchoix : Le but je comprenais mais pas pourquoi cette écriture
Code:
    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....
Attention, je ne parle pas de la même chose

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

.cells(+1 NumLig, 2+I) Que signifie cette syntaxe
Il faut remettre la syntaxe dans son contexte
Code:
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 :eek:

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
Oui voir l'exemple de mon fichier pour les matricules

Sinon sur le forum tu trouveras choix d'une combobox par rapport à une autre
Ou sur le site de Mister Boisgontier : http://boisgontierjacques.free.fr/

A+
 
Dernière modification par un modérateur:

YANN-56

XLDnaute Barbatruc
Re : Excel Base de données et VBA

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.

Je vous laisse.

Au plaisir de vous rencontrer sur ce site. :)

Yann
 
C

Compte Supprimé 979

Guest
Re : Excel Base de données et VBA

Salut Yann ;)

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
:p

A+
 

YANN-56

XLDnaute Barbatruc
Re : Excel Base de données et VBA

[COLOR="RoyalBlue"]La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses[/COLOR].

Dis-tu!

Celui-ci a été inventé par les arabes. Il est aujourd'hui un élément incontournable de l'informatique. ***

Nous n'en serions peut-être pas toujours au Boulier, mais l'on aurait avancé moins vite!

La politesse un élément essentiel pour donner envie de poursuivre ici.
Comme celle de "evilfire" n'est-il pas?

Au fait! Il est où? ….. Il est en train de bosser le p'tit jeune. ;)

*** (Comme la biture inventée par les bretons, aujourd'hui incontournable des retours de noces)

P.S. Voir l'étymologie du mot "Biture" J'ai ma traduction si tu veux. :)

A aussi +

Yann

Diantre! Je me suis planté entre les balises de la rade de Lorient
en écrivant la première ligne... :confused:
 

YANN-56

XLDnaute Barbatruc
Re : Excel Base de données et VBA

Salut,petite digression pour rectifier info concernant l'origine du zéro

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é!!!) :) :rolleyes:

On ne va pas envahir ce post avec de telles considérations.

Amicalement, et au plaisir de te croiser ici.

P.S. Et sur la biture tu as trouvé quoi?

Yann
 
Dernière édition:

evilfire

XLDnaute Nouveau
Re : Excel Base de données et VBA

bonsoir,

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.

Bonne nuit à demain.

Cordialement

Evilfire
 

evilfire

XLDnaute Nouveau
Re : Excel Base de données et VBA

Bonsoir tout le monde ^^

Désolé du double post ^^'

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

Cordialement

J.R.
 

Discussions similaires

Statistiques des forums

Discussions
312 095
Messages
2 085 249
Membres
102 835
dernier inscrit
Alexandrax971