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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Pb refresh avec un sous formulaire sous access (VB6)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Pb refresh avec un sous formulaire sous access (VB6)

n°1414901
rital_5_4
Posté le 27-07-2006 à 20:00:56  profilanswer
 

Bonjour à tous,
 
 
Je développe actuellement  en VB6 un formulaire sous access pour faciliter la gestion d'une base de donnée.
J'ai un problème de "refresh" en fait plus précisemment d'actualisation d'un sous formulaire...
Je m'explique.
 
Mon formulaire : form contient un sous formulaire : sousForm ainsi qu'une zone de saisie texte : saisie1.
sousForm à pour source une requete : requete1 qui est "en dur" dans la base access (onglet requete -> requete1)
 
Lorsque je tape dans la zone de saisie du fomulaire form (sub saisie1_change) je modifie le code de requete1 afin de prendre en compte la nouvelle valeur dans la zone de saisie (en gros la requete change dès qu'on fait varier la  valeur de saisie) voilà le code :

Code :
  1. Private sub saisie1_change()
  2.        CurrentDbQueryDefs("requete1" ).SQL = "Select * from ...... where champ1 = " & saisie1.Text & ";"
  3.        sousForm.requery
  4. end sub


 
Lors du premier changement le sous formulaire s'affiche convenablement mais ensuite malgré le changement du code de  requete1 (si on execute la requete hors formulaire -> dans l'onglet requete de access le résultat souhaité s'affiche  :ouch: ) l'affichage n'est pas mis à jour comme si la méthode requery ne fonctionnait pas. Le problème ne vient donc pas de requete1 a priori...
 
Quelq'un à t-il déjà rencontré ce problème ? Faut-il rouvrir et fermer le formulaire ? Merci de m'aider au plus vite n'hésitez pas si je n'ai pas été clair.
 

mood
Publicité
Posté le 27-07-2006 à 20:00:56  profilanswer
 

n°1414912
les gens r​oots
Jah rastafarei
Posté le 27-07-2006 à 20:34:29  profilanswer
 

Bonsoir,
as-tu pensé à utiliser un autre contrôle qu'un textbox? (même si ça parait étrange ^^)

n°1414916
rital_5_4
Posté le 27-07-2006 à 20:41:22  profilanswer
 

les gens roots a écrit :

Bonsoir,
as-tu pensé à utiliser un autre contrôle qu'un textbox? (même si ça parait étrange ^^)


 
J'avais pensé à utiliser un listbox mais de toute facon saisie1 est un contrôle indépendant donc je doute que le problème vienne de là  :jap:  
Le problème doti probablement venir du sous formulaire ou de ses propriétés .... Peut être que j'utilise mal requery ou qu'il existe une autre solution pour rafraichir le sous formulaire.


Message édité par rital_5_4 le 27-07-2006 à 20:43:19
n°1415034
les gens r​oots
Jah rastafarei
Posté le 28-07-2006 à 08:51:25  profilanswer
 

Tiens je viens de penser à un truc: si tu réinitialisais ta query une fois la requète effectuée, ex:
 
' CurrentDbQueryDefs("requete1" ).SQL = "Select * from ....where  champ1 = " & saisie1.Text & ";"  
' CurrentDbQueryDefs = new query

n°1415035
les gens r​oots
Jah rastafarei
Posté le 28-07-2006 à 08:52:13  profilanswer
 

les gens roots a écrit :

Tiens je viens de penser à un truc: si tu réinitialisais ta query une fois la requète effectuée, ex:
 
' CurrentDbQueryDefs = new query("requete1" )
' CurrentDbQueryDefs("requete1" ).SQL = "Select * from ....where  champ1 = " & saisie1.Text & ";"  


Message édité par les gens roots le 28-07-2006 à 08:52:54
n°1415680
rital_5_4
Posté le 29-07-2006 à 09:33:40  profilanswer
 

je viens de faire quelques tests, en faite lorsqu'on ouvre le formulaire form, la requete1 remplie bien le sous formulaire sousForm mais ensuite rien ne se passe lorsque la méthode requery est executée et ce malgré le fait que requete1 soit bien à jour.
Le plus étrange c'est que si je crée un sous formulaire "externe" (dans onglet -> formulaire) lié à requete1 et que je l'ouvre dans une autre fenetre dès que la valeur de mon champ de saisie change tout s'affiche normalement :pt1cable: .  
Quelq'un à t-il déjà eu ce problème ? Peut-on inclure une fenetre dans un formulaire ou la placer à un endroit voulu ?
 
Merci de m'aider au plus vite !


Message édité par rital_5_4 le 29-07-2006 à 09:37:33
n°1415742
seniorpapo​u
Posté le 29-07-2006 à 14:22:49  profilanswer
 

Bonjour,
as-tu regardé les mèthodes Requery et refresh?
cordialement

n°1419071
micke21
Posté le 03-08-2006 à 17:34:44  profilanswer
 

Salut,
C'est un bug sur les sous formulaire
ton sous formulaire perd le recordsource.
apres ton code et avant le requery essaye me.recordsource=me.recordsource
Cordialement
exemple :
Private sub saisie1_change()    
   CurrentDbQueryDefs("requete1" ).SQL = "Select * from ...... where champ1 = " & saisie1.Text & ";"        
sousform.recordsource=sousform.recordsource
sousForm.requery
end sub


Message édité par micke21 le 03-08-2006 à 17:53:51

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

  Pb refresh avec un sous formulaire sous access (VB6)

 

Sujets relatifs
optimisation vba access[vb6] difficulté à faire une requete sql
runtime access / visual studio 2005pb : Modifier un formulaire, par un evenement hors de ce formulaire.
[ACCESS] VBA-SELECT * FROM users WHERE nom=nom AND password=password?Insertion de la variable NULL après formulaire
Optimisation d'import de gros fichiers texte dans ACCESS[vba access] controle créer à la volée avec evenement
[Access] Mettre à jour une zone de liste à partir d'un menu déroulantEst-il possible de réduire la hauteur d'un formulaire?
Plus de sujets relatifs à : Pb refresh avec un sous formulaire sous access (VB6)


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