Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2966 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Problème de mise à jour de formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de mise à jour de formulaire

n°1596539
vrutoile
Posté le 07-08-2007 à 10:46:36  profilanswer
 

Bonjour HFR,
 
J'effectue des requêtes en ADO sur des tables mais lorsque je veux afficher les tables
sur lesquelles j'ai fait des requêtes dans un formulaire dans une zone de liste (rowsource
= SELECT * FROM TABLE). Cela ne m'affiche pas le résultat je suis obligé d'ouvrir
et fermer le formulaire pour avoir la mise à jour.
Avez vous une idée de comment faire pour ne pas devoir ouvrir/fermer le formulaire.
Je vous remercie

mood
Publicité
Posté le 07-08-2007 à 10:46:36  profilanswer
 

n°1596545
vrutoile
Posté le 07-08-2007 à 10:53:56  profilanswer
 

Pour  les précisions j'interface avec une bdd access.

n°1596562
seniorpapo​u
Posté le 07-08-2007 à 11:06:35  profilanswer
 

Bonjour,
essayer: refresh      après avoir changé le rowsource
Cordialement
 

n°1596580
vrutoile
Posté le 07-08-2007 à 11:23:23  profilanswer
 

Merci mais je ne peux pas faire de refresh sur la zone de liste par contre sur le form entier je peux faire un refresh. J'ai essayé en changeant la rowsource et en faisant requery mais cela n'a rien changé. :/

n°1596655
vrutoile
Posté le 07-08-2007 à 13:39:05  profilanswer
 

up

n°1596663
seniorpapo​u
Posté le 07-08-2007 à 13:51:55  profilanswer
 

re,
En dehors de refresh, requery et repaint je ne vois pas grand chose d'autre.
Un bout de code(ou la totalité) serait bienvenu  
Cordilement

n°1596667
vrutoile
Posté le 07-08-2007 à 13:58:43  profilanswer
 

Private Sub Form_Load()
 
 
Liste8.RowSource = "SELECT titre, nom, prix_t1, prix_t2, no_operat FROM fin_info"
Liste8.Requery
 
End Sub

n°1596697
seniorpapo​u
Posté le 07-08-2007 à 14:33:06  profilanswer
 

Re,  
mettre la séquence dans private Sub Form_Open()

n°1596732
vrutoile
Posté le 07-08-2007 à 15:19:27  profilanswer
 

Merci cela fonctionne :)

n°1596739
vrutoile
Posté le 07-08-2007 à 15:28:24  profilanswer
 

Par contre j'ai un problème d'affichage quand je veux afficher les données de la table modifiée.
Il me les affiche pas directement je dois taper une ou deux touches sur le clavier en général.
Comment faire pour qu'il me les affiche directement?
 
 
For Each varitem In Liste8.ItemsSelected
 
titre = Liste8.ItemData(varitem)
 
 
 
prix_t1.SetFocus
prix_t1a = prix_t1.Text
 
prix_t2.SetFocus
prix_t2a = prix_t2.Text
 
Set rst = New ADODB.Recordset
rst.Open "UPDATE fin_info SET prix_t1 = '" & prix_t1a & "', prix_t2 ='" & prix_t2a & "' WHERE titre ='" & titre & "' ", cnx
 
 
Next varitem
 
Liste8.RowSource = "SELECT titre, nom, prix_t1, prix_t2, no_operat FROM fin_info"
Liste8.Requery
     
 
End Sub


Message édité par vrutoile le 07-08-2007 à 15:30:43
mood
Publicité
Posté le 07-08-2007 à 15:28:24  profilanswer
 

n°1596870
seniorpapo​u
Posté le 07-08-2007 à 18:15:42  profilanswer
 

Bonsoir,
je n'utilise pas le ADODB mais ne faut-il pas un rst.close ou un set rst = nothing????
ca n'explique pas le pb des touches nécessaires.  
 
cette séquence n'est pas dans le sub ..._open()  
parce que je ne vois pas comment tu selectionnes des items avant l'open.
Cordialement
 
 

n°1597014
vrutoile
Posté le 08-08-2007 à 09:17:29  profilanswer
 

Voilà le code en entier:
 
 
Private Sub editer_cours_Click()
 
Dim varitem As Variant
Dim rst As ADODB.Recordset
Dim cnx As ADODB.Connection
Dim prix_t1a As String
Dim prix_t2a As String
Dim titre As String
 
Set cnx = New ADODB.Connection
 
'Définition du pilote de connexion
cnx.Provider = "Microsoft.Jet.Oledb.4.0"
'Définition de la chaîne de connexion
 
 
cnx.ConnectionString = "Y:\base.mdb"
'Ouverture de la base de données
cnx.Open
 
For Each varitem In Liste8.ItemsSelected
 
titre = Liste8.ItemData(varitem)
 
 
 
prix_t1.SetFocus
prix_t1a = prix_t1.Text
 
prix_t2.SetFocus
prix_t2a = prix_t2.Text
 
Set rst = New ADODB.Recordset
rst.Open "UPDATE fin_info SET prix_t1 = '" & prix_t1a & "', prix_t2 ='" & prix_t2a & "' WHERE titre ='" & titre & "' ", cnx
 
 
Next varitem
 
Set rst = Nothing
 
 
 
Liste8.RowSource = "SELECT titre, nom, prix_t1, prix_t2, no_operat FROM fin_info"
Liste8.Requery
     
 
End Sub

n°1597082
vrutoile
Posté le 08-08-2007 à 11:04:06  profilanswer
 

up

n°1597102
seniorpapo​u
Posté le 08-08-2007 à 11:46:05  profilanswer
 

Bonjour,
aucune idée,
quelqu'un d'autre??
Cordialement

n°1597218
vrutoile
Posté le 08-08-2007 à 15:02:26  profilanswer
 

tjrs pas d'idées ?

n°1597553
vrutoile
Posté le 09-08-2007 à 09:35:51  profilanswer
 

up :/

n°1597683
vrutoile
Posté le 09-08-2007 à 14:21:40  profilanswer
 

reup

n°1598042
vrutoile
Posté le 10-08-2007 à 09:26:15  profilanswer
 

up

n°1598182
vrutoile
Posté le 10-08-2007 à 14:21:58  profilanswer
 

up

n°1598798
vrutoile
Posté le 13-08-2007 à 09:12:01  profilanswer
 

up tjrs


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Problème de mise à jour de formulaire

 

Sujets relatifs
[Opengl] Problème d'éclairageSWING - JAVA Problème avec des sous-panneaux
PROBLEME DE DATE LORS DE L'IMPORTATION SOUS EXCELProblème d'affichage d'un JCalendar
Caml , problème avec le carréProblème sur mon site internet.
AJAX, div, input, et formulaire...Probleme pour validation XHTML
URL-Rewriting - un problème et des questionsProblème avec les jointures
Plus de sujets relatifs à : Problème de mise à jour de formulaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR