Bonjour
j ai besoin d'aide pour terminer mon projet de PFE
Voilà ce qui se passe j ai plein d erreur au niveau de compilation du fichier
y a t il qq1 qui porrait m eclaircir certaine choses
Merci d'avance
Bonjour
j ai besoin d'aide pour terminer mon projet de PFE
Voilà ce qui se passe j ai plein d erreur au niveau de compilation du fichier
y a t il qq1 qui porrait m eclaircir certaine choses
Merci d'avance
Bonjour
Il serait bon de détailler ce qui ne va pas, de plus ton zip est incomplet et tout le monde ne compilera pas pour toi.
Donc des détails sur le problème rencontré.
Philippe
oui désolé
au fait quand je clic sur commande 1 il faut qu'il me donne les données sur le fichier access dans la table imprimées, ensuite je choisis un code matière [combo1, 10C .....], ensuite cliquer sur commande 2 pour chercher dans la table Production [fichier Access] la répartition, le nombre d'exemplaire par feuille
Mais dés que je clic sur commande 2 j'obtiens un message d'erreur de débogage.
Je viens de uploader le fichier avec la base access
Re
Tu devrais donner plus d'explications avec le code à l'appui, car tout le monde ne télécharge pas les fichiers.
Philippe
dans le fichier Access il y a les tables qui contiennent les détails des articles
ceci est le code sources pour le calcul
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60 Private Sub Command1_Click() Dim maconnexion As New ADODB.Connection Dim sql1 As String Dim sql4 As String Dim sql2 As String Dim sql3 As String Dim rec1 As New ADODB.Recordset Dim rec2 As New ADODB.Recordset Dim rec3 As New ADODB.Recordset Dim rec4 As New ADODB.Recordset maconnexion.ConnectionString = "DSN=imprimerie2007" maconnexion.Open sql1 = "select code_imprimee from imprimée" Set rec1 = maconnexion.Execute(sql1) While (rec1.EOF = False) Combo1.AddItem rec1.Fields(0) a = Combo1.Text rec1.MoveNext Wend rec1.Close End Sub Private Sub Command2_Click() Dim maconnexion As New ADODB.Connection Dim sql1 As String Dim sql2 As String Dim sql3 As String Dim rec1 As New ADODB.Recordset Dim rec2 As New ADODB.Recordset Dim rec3 As New ADODB.Recordset maconnexion.ConnectionString = "DSN=imprimerie2007" maconnexion.Open '""""""""""""""""" sql1 = "select qantité from imprimée Where code_imprimee = combo1" q = rec1 Set rec1 = maconnexion.Execute(sql1) sql2 = "SELECT FROM production WHERE ( code_imprimee= combo1)" Set rec2 = maconnexion.Execute(sql2) While code_imprimee = Combo1 Wend x = rec2.Fields(4) * q / rec2.Fields(3) While (rec3.EOF = False) sql3 = " update besoin from matiere_1 Set besoin = besoin + x Where rc2.Fields(1) = code_matiére1" Set rec3 = maconnexion.Execute(sql3) rec3.MoveNext Wend rec3.Close End Sub
Bonsoir tt le monde,
je ne peux pas vraiment t'aider sur ton problème, malgré tout, une chose me choque: la présence de caractères accentués comme désignation de champs et de table. J'espère que tu trouveras la solution à ton problème
Dans ta table mprimée, as tu la valeur "combo1" qui existe dans ton champs "qantité ", si oui ta requête sql1 est incorrecte, si non elle est aussi incorrecte
voici comment tu l' écris
Je pense qu'en fait tu devrais faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part sql1 = "select qantité from imprimée Where code_imprimee = combo1"
Ce qui fonctionnera si ton combo1 contient une valeur numérique et que le champs "code_imprimee" est défini de type nombre. Il est plus probable que ce champ soit de type texte, il faudrait alors écrire
Code : Sélectionner tout - Visualiser dans une fenêtre à part sql1 = "select qantité from imprimée Where code_imprimee =" & combo1
Ta requête sql2 a le même type de problème, mais en plus tu ne précise pas quel champs tu veux sélectionner, mets quelque chose de valide à la place des xxxxx
Code : Sélectionner tout - Visualiser dans une fenêtre à part sql1 = "select qantité from imprimée Where code_imprimee = '" & combo1 & "' "
Je pense que tu devrais avoir compris ce quil faut faire pour ta requête sql3
Code : Sélectionner tout - Visualiser dans une fenêtre à part sql2 = "SELECT xxxxxx FROM production WHERE code_imprimee= '" & combo1 & "' "
j'ai trouver la solution :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 Dim maconnexion As New ADODB.Connection Dim sql1 As String Dim sql2 As String Dim sql3 As String Dim sql4 As String Dim sql5 As String Dim b As Integer Dim rec1 As New ADODB.Recordset Dim rec2 As New ADODB.Recordset Dim rec3 As New ADODB.Recordset Dim rec4 As New ADODB.Recordset Dim rec5 As New ADODB.Recordset maconnexion.ConnectionString = "DSN=imprimerie2007" maconnexion.Open sql5 = "update matiere_1 set besoin = " & 0 & "" Set rec5 = maconnexion.Execute(sql5) sql1 = "select * from imprimée" Set rec1 = maconnexion.Execute(sql1) While rec1.EOF = False q = rec1.Fields(1) sql2 = "SELECT * FROM production WHERE code_imprimee= '" & rec1.Fields(0) & "'" Set rec2 = maconnexion.Execute(sql2) While rec2.EOF = False x = rec2.Fields(3) * q / rec2.Fields(2) sql4 = "select * from matiere_1 where code_matiére1=" & rec2.Fields(1) & "" Set rec4 = maconnexion.Execute(sql4) b = rec4.Fields(4) b = b + x sql3 = "update matiere_1 set besoin = " & b & " where code_matiére1=" & rec2.Fields(1) & "" Set rec3 = maconnexion.Execute(sql3) rec2.MoveNext Wend rec2.Close rec1.MoveNext Wend rec1.Close
Salut,
Pense à cliquer sur la balise , si ton problème est réglé.
Bonjour
j ai besoin d'aide pour terminer mon projet de PFE
je voudrais savoir comment afficher un formulaire access à partir de visual basic 6.
je vous prie de les expliciter afin que je puisse saisir pleinement
merci de bien vouloir m'aider
C'est simple, on ne peut pas , à ma connaissance
Bonjour
Un formulaire Access étant obligatoirement contenu dans une fenêtre Access il faudrait pouvoir voir cette fenêtre dans une forme VB, et après mettre ce formulaire en plein écran pour masquer la fenêtre Access (pour cela il y a des possibilités dans le forum Access).
Le hic est de mettre Access dans une form VB, et de plus je ne sais pas si tu pourras intervenir dans ce formulaire, il sera vu comme un tout à mon avis.
Philippe
Bonjour,
Sauf à ce que je n'ai rien compris, il ne demande pas qu'Access soit totalement transparent.
S'il doit gérer un affichage, pourquoi ne pas utiliser DAO plutôt qu'Ado ?
=> .docmd.openform xxx
J'ai loupé un épisode
Re
Effectivement c'est loin d'être clair.
Pour information, la commande DoCmd appartient à l'objet application, donc à Access et cela n'a rien à voir avec DAO ou ADO qui permettent elles d'accéder directement aux tables.
Philippe
slt
j'ai utiliser ce code pour afficher le formulaire qui me permet d'ajouter des données dans les tablesmais toujours il ya un message d'erreur '3001': les arguments sont de type incorrect ,en dehors des limites autoriser ou en conflis les uns avec les autres
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Dim maconnexion As New ADODB.Connection maconnexion.ConnectionString = "DSN=imprimerie2007" maconnexion.Open maconnexion.docmd.OpenForm ("frm_production")
Merci. A force de penser qu'on me suit à tous coups dans mes raccourcis de langage,
il ne faut pas s'étonner que je ne me fasse pas comprendre.
En fait, je pensais que la sous couche des méthodes de Docmd pour accéder au recordset utilisait DAO
En clair, => Pour être cohérent avec docmd.OpenForm, autant utiliser les méthodes l'object Access.Application et abandonner l'accès aux données par ADO
Voir réponse ci-dessus
avec
mais n'étant pas spécialiste des bases de données, ça n'engage que moi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 dim oAcc as object Set oAcc=createobject("access.application") oAcc.OpenCurrentDatabase xxx oAcc.CurrentDb.Execute sql oAcc.DoCmd.OpenForm xxx
j'ai utilisé ce code mais il y a toujours des message d'erreur :
Dmessage d'rreur: microsoft office access n a pas pu ouvrir cette base pcq celle-ci est manquante , a ete ouverte par un autre utilisateur en mode exclusive
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 im DB As ADODB.Connection Dim RS As Recordset Dim oAcc As Object Set oAcc = CreateObject("access.application") oAcc.OpenCurrentDatabase xx = imprimerie2007 oAcc.CurrentDb.Execute oAcc.DoCmd.OpenForm frm_production
et si j'ajoute ce code
'Set DB = Openbase("d:\imprimerie2007.mdb")
message d'erreur : fonction nn defini
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager