Comment liée un userform avec une table access
Résolu/Fermé
pyrus2047
Messages postés
153
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
22 mai 2023
-
24 avril 2018 à 00:12
pyrus2047 Messages postés 153 Date d'inscription lundi 3 juillet 2017 Statut Membre Dernière intervention 22 mai 2023 - 16 janv. 2019 à 11:08
pyrus2047 Messages postés 153 Date d'inscription lundi 3 juillet 2017 Statut Membre Dernière intervention 22 mai 2023 - 16 janv. 2019 à 11:08
Bonjour a tous
Dans l' userform 1 j' ai une listview qui colore sus condition les lignes et champ de recherche multicritère matérialiser par la textbox1
et des textbox qui récupéré la ligne sélectionner dans la listview aussi des bouton ajouter,modifier,suprimer
donc voici mon souci je souhait liée l' userform 1 avec une table access a fin de pouvoir traiter un grand volume de donner
si vous avez une solution je vous joint les deux fichier a liée merci d'avance
Cordialement
Fichier Excel
https://www.cjoint.com/c/HDxkYumAidQ
Fichier Access
https://www.cjoint.com/c/HDxkWQbXqxQ
Dans l' userform 1 j' ai une listview qui colore sus condition les lignes et champ de recherche multicritère matérialiser par la textbox1
et des textbox qui récupéré la ligne sélectionner dans la listview aussi des bouton ajouter,modifier,suprimer
donc voici mon souci je souhait liée l' userform 1 avec une table access a fin de pouvoir traiter un grand volume de donner
si vous avez une solution je vous joint les deux fichier a liée merci d'avance
Cordialement
Fichier Excel
https://www.cjoint.com/c/HDxkYumAidQ
Fichier Access
https://www.cjoint.com/c/HDxkWQbXqxQ
A voir également:
- Comment liée un userform avec une table access
- Table ascii - Guide
- Table des matières word - Guide
- Access appdata - Guide
- Table des annexes word ✓ - Forum Word
- Table des matières et table des annexes - Forum Word
3 réponses
f894009
Messages postés
17241
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 février 2025
1 713
24 avril 2018 à 07:23
24 avril 2018 à 07:23
Bonjour,
Vous etes de la meme famille avec BLBATHOR???
Je regarde la chose
Vous etes de la meme famille avec BLBATHOR???
Je regarde la chose
f894009
Messages postés
17241
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 février 2025
1 713
8 mai 2018 à 11:29
8 mai 2018 à 11:29
pyrus2047
Messages postés
153
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
22 mai 2023
8 mai 2018 à 20:44
8 mai 2018 à 20:44
f894009
Messages postés
17241
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 février 2025
1 713
9 mai 2018 à 06:20
9 mai 2018 à 06:20
Bonjour,
Oui, ce sont les meme que je n'ai pas changées depuis le debut...... et ca marche chez moi
Oui, ce sont les meme que je n'ai pas changées depuis le debut...... et ca marche chez moi
pyrus2047
Messages postés
153
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
22 mai 2023
16 janv. 2019 à 11:08
16 janv. 2019 à 11:08
Bonjour
J'ai cette connection qui fonctionne en liaison excel avec access
mais pas sur les machines qui dispose uniqeument du runtime access
si vous avez une solution pour l' adapter cette fonction et ce bout de code a votre méthode connection qui elle fonction
bien avec le runtime access
Cordialement
J'ai cette connection qui fonctionne en liaison excel avec access
mais pas sur les machines qui dispose uniqeument du runtime access
si vous avez une solution pour l' adapter cette fonction et ce bout de code a votre méthode connection qui elle fonction
bien avec le runtime access
Cordialement
Function fMDP(Utilisateur As String, MdP As String) As Boolean
Dim ACapp As Access.Application, db As DAO.DATABASE, rTrouve As DAO.Recordset, sql As String
Dim ws As Worksheet, fd As DAO.Field
Set ACapp = New Access.Application
Set db = DBEngine.OpenDatabase("C:\Users\pyrus2047\Documents\ebergeur.accdb", False, False, ";pwd=PAPA")
sql = "select * from parametrage where NOM='" & Utilisateur & "' and [Mot de Passe] ='" & MdP & "'"
Set rTrouve = db.OpenRecordset(sql)
If rTrouve.EOF Then
fMDP = False
Else
fMDP = True
For Each ws In ThisWorkbook.Sheets
For Each fd In rTrouve.Fields
If ws.Name = fd.Name Then
If fd.Value = "X" Then
ws.Visible = True
Else
ws.Visible = xlSheetVeryHidden
End If
Exit For
End If
Next fd
Next ws
End If
db.Close
End Function
Option Explicit
Const c_t_parm As String = "Tombins"
Dim ACapp As Access.Application, db As DAO.Database, rcontacts As DAO.Recordset
Private Sub CommandButton4_Click()
If Me.ComboBox1.Value = "" Then
MsgBox "veuillez sélectionner une donnée dans la liste déroulante"
Else
rcontacts.FindFirst ("[NOM PRENOM]='" & Me.ComboBox1.Value & "'")
rcontacts.Edit
rcontacts![NOM PRENOM] = Me.TextBox1.Value
rcontacts!MAIL = Me.TextBox2.Value
rcontacts!TELEPHONE = Me.TextBox3.Value
rcontacts!ADRESSE = Me.TextBox4.Value
If Me.CheckBox1 = True Then
rcontacts!PHOTOS = "oui"
Else
rcontacts!PHOTOS = "NON"
End If
rcontacts.Update
End If
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox3 = ""
Me.TextBox4 = ""
Me.CheckBox1 = False
MsgBox "Votre enregistrement a ete modifier"
End Sub
Private Sub CommandButton1_Click()
If MsgBox("Validez vous ces données?", vbYesNo, "Validation") = vbYes Then
rcontacts.AddNew
rcontacts![NOM PRENOM] = Me.TextBox1.Value
rcontacts!MAIL = Me.TextBox2.Value
rcontacts!TELEPHONE = Me.TextBox3.Value
rcontacts!ADRESSE = Me.TextBox4.Value
If Me.CheckBox1 = True Then
rcontacts!PHOTOS = "oui"
Else
rcontacts!PHOTOS = "NON"
End If
rcontacts.Update
End If
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox3 = ""
Me.TextBox4 = ""
Me.CheckBox1 = False
End Sub
Private Sub CommandButton5_Click()
rcontacts.FindFirst ("[NOM PRENOM]='" & Me.TextBox1.Value & "'")
rcontacts.MovePrevious
On Error Resume Next
If Not rcontacts.BOF Then
Me.TextBox1.Text = rcontacts![XXXXXXXXX]
Me.TextBox2.Text = rcontacts![XXXXXXXXX]
Me.TextBox3.Text = rcontacts![XXXXXXXXXt]
Me.TextBox4.Text = rcontacts!XXXXXXXXX
Me.TextBox5.Text = rcontacts!XXXXXXXXX
Me.TextBox6.Text = rcontacts!XXXXXXXXX
Me.TextBox7.Text = rcontacts!XXXXXXXXX
Me.TextBox8.Text = rcontacts![XXXXXXXXX]
Me.TextBox9.Text = rcontacts!XXXXXXXXX
Me.TextBox10.Text = rcontacts![XXXXXXXXX]
Me.TextBox11.Text = rcontacts![XXXXXXXXX]
Me.TextBox12.Text = rcontacts![XXXXXXXXX]
Me.TextBox13.Text = rcontacts![XXXXXXXXX]
Me.TextBox14.Text = rcontacts![XXXXXXXXX]
If rcontacts!PHOTOS = "oui" Then
Me.CheckBox1 = True
Else
Me.CheckBox1 = False
End If
Else
MsgBox "Vous êtes au premier enregistrement"
End If
End Sub
Private Sub CommandButton6_Click()
rcontacts.FindFirst ("[NOM PRENOM]='" & Me.TextBox1.Value & "'")
rcontacts.MoveNext
On Error Resume Next
If Not rcontacts.EOF Then
Me.TextBox1.Text = rcontacts![XXXXXXXXX]
Me.TextBox2.Text = rcontacts![XXXXXXXXX]
Me.TextBox3.Text = rcontacts![XXXXXXXXX]
Me.TextBox4.Text = rcontacts!XXXXXXXXX
Me.TextBox5.Text = rcontacts!XXXXXXXXX
Me.TextBox6.Text = rcontacts!XXXXXXXXX
Me.TextBox7.Text = rcontacts!XXXXXXXXX
Me.TextBox8.Text = rcontacts![XXXXXXXXX]
Me.TextBox9.Text = rcontacts!XXXXXXXXX
Me.TextBox10.Text = rcontacts![XXXXXXXXX]
Me.TextBox11.Text = rcontacts![XXXXXXXXX]
Me.TextBox12.Text = rcontacts![XXXXXXXXX]
Me.TextBox13.Text = rcontacts![XXXXXXXXX]
Me.TextBox14.Text = rcontacts![XXXXXXXXX]
If rcontacts!PHOTOS = "oui" Then
Me.CheckBox1 = True
Else
Me.CheckBox1 = False
End If
Else
MsgBox "Vous êtes au dernier enregistrement"
End If
End Sub
Private Sub ComboBox1_Change()
Dim photo As String
On Error Resume Next
rcontacts.FindFirst ("[NOM PRENOM]='" & Me.ComboBox1.Value & "'")
Me.TextBox1.Text = rcontacts![XXXXXXXXX]
Me.TextBox2.Text = rcontacts![XXXXXXXXX]
Me.TextBox3.Text = rcontacts![XXXXXXXXX]
Me.TextBox4.Text = rcontacts!XXXXXXXXX
Me.TextBox5.Text = rcontacts!XXXXXXXXX
Me.TextBox6.Text = rcontacts!XXXXXXXXX
Me.TextBox7.Text = rcontacts!XXXXXXXXX
Me.TextBox8.Text = rcontacts![XXXXXXXXX]
Me.TextBox9.Text = rcontacts!XXXXXXXXX
Me.TextBox10.Text = rcontacts![XXXXXXXXX]
Me.TextBox11.Text = rcontacts![XXXXXXXXX]
Me.TextBox12.Text = rcontacts![XXXXXXXXX]
Me.TextBox13.Text = rcontacts![XXXXXXXXX]
Me.TextBox14.Text = rcontacts![XXXXXXXXX]
If rcontacts!PHOTOS = "oui" Then
Me.CheckBox1 = True
Else
Me.CheckBox1 = False
End If
On Error GoTo defaut
photo = TextBox1.Value
Image1.Picture = LoadPicture("C:\Users\Pictures\" & photo & ".jpg")
Exit Sub
defaut:
Image1.Picture = LoadPicture("C:\Users\Pictures.jpg")
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub Textbox1_Change()
Dim photo As String
On Error GoTo defaut
photo = TextBox1.Value
Image1.Picture = LoadPicture("C:\Users\Pictures\" & photo & ".jpg")
Exit Sub
defaut:
Image1.Picture = LoadPicture("C:\Users\Pictures.jpg")
End Sub
Private Sub UserForm_Initialize()
Set ACapp = New Access.Application
Set db = ACapp.DBEngine.OpenDatabase _
("C:\Users\Abdessamad\Documents\table.accdb", False, False, ";pwd=PAPA")
Set rcontacts = db.OpenRecordset(c_t_parm, dbOpenDynaset)
Do While Not rcontacts.EOF
ComboBox1.AddItem rcontacts![NOM PRENOM]
rcontacts.MoveNext
Loop
End Sub
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
9 mai 2018 à 07:26
9 mai 2018 à 07:26
Bonjour
Voire forum programmation VBA
Voire forum programmation VBA
f894009
Messages postés
17241
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 février 2025
1 713
Modifié le 9 mai 2018 à 07:53
Modifié le 9 mai 2018 à 07:53
Bonjours Castours, ca roule?
Certes, mais ce fichier marchait chez lui depuis le 24/04/2018 jusqu'a 07/05/2018 et apres verif de l'erreur, c'est bien un probleme soit de nom de base soit de chemin et pas de references
Par-contre, il aurait du etre dans la partie VBA
Certes, mais ce fichier marchait chez lui depuis le 24/04/2018 jusqu'a 07/05/2018 et apres verif de l'erreur, c'est bien un probleme soit de nom de base soit de chemin et pas de references
Par-contre, il aurait du etre dans la partie VBA
pyrus2047
Messages postés
153
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
22 mai 2023
9 mai 2018 à 14:14
9 mai 2018 à 14:14
Bonjour
je m'excuse je fais perdre du temps a tout le monde
le boulet a encore frapper c'est un espace a la fin du nom de la base qui a cause le bug
pour clore le sujet
que dois ton ajouter pour le cas ou la base et protéger par un mot de passe ex:PAPA
je m'excuse je fais perdre du temps a tout le monde
le boulet a encore frapper c'est un espace a la fin du nom de la base qui a cause le bug
pour clore le sujet
que dois ton ajouter pour le cas ou la base et protéger par un mot de passe ex:PAPA
24 avril 2018 à 08:48
oui il faut que je supprime un des compte
Modifié le 24 avril 2018 à 18:42
C'est en bonne voie pour recherche. Ensuite je fais pour les boutons Ajout, modif, supprimer
Mais, he oui, il y a un mais. Les noms de colonne listview ne correspondent pas avec les entetes de colonne de la table Access!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
J'ai trouve ce qui provoquait un temps d'execution tres long, deux boucles qui ne servent a rien en dehors de foutre le daoua dans le partie coloriage de la listview. C'est en décortiquant le code plus en detail, que je m'en suis aperçu vu que je dois le reecrire en partie. Je verifie sur le fichier Excel et si Ok, a vous de voir si nous continuons avec table access ou pas
24 avril 2018 à 20:09
En effet, dans la mise a jour de la listview j'ai colle le code de coloriage sans faire attention aux deux boucles qui font vraiment durer le plaisir
Table access et requete Sql, temps d'exec de 2.2s a 3.1s chez moi avec mon PC
Feuille excel (avec les donnees table access) et travail en memoire, temps d'exec 0.5s de plus que table access
A vous de voir
24 avril 2018 à 23:56
Merci a vous j'aimerai bien comprendre pourquoi c'est si long a l'execution
je privilégie la version table access qui a l'aire plus rapide
Modifié le 25 avril 2018 à 09:11
Ci-joint
un module avec les differentes procedures: https://mon-partage.fr/f/oPOgmNTQ/
Fichier base BLBATHOR_ListView-Bis_2 modifier avec donnees table ACCESS dans feuille EXCEL:
https://mon-partage.fr/f/afDsq7fM/
Je continue sur la base ACCESS, pour les trois boutons
Pourquoi pas de l'ACCESS complet, table et formulaire???