probleme avec applyfilter

Le
camille
Bonjour,

voila j'ai fait une fonction qui redimensionne un form en mode continu
suivant le nombre de lignes dans le form
voila à quoi ça ressemble :

Sub Dimensions()
a = 730 'barre haut
b = Me.Section(1).Height 'hauteur de l'entete de formulaire
c = Me.Section(0).Height 'hauteur de la section détail
x = Me.RecordsetClone.RecordCount 'nombre d'enregistrements affichés
If x = 0 Then x = 1
If x > 30 Then x = 30 'le nombre maximum de lignes
affichées

hauteur = a + b + (x * c) + D
DoCmd.MoveSize , , , hauteur
End Sub



Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
MsgBox Me.RecordsetClone.RecordCount
Me.CmdAfficherTout.Enabled = True
Call Dimensions
End Sub


aprés ça je pensais qu'en appellant la fonction sur filtre appliqué =
ça
marcherait mais je l'ai dans l'os
La MsgBox Me.RecordsetClone.RecordCount me renvoie le nombre de lignes
d'avant l'application du filtre
par exp mon form affiche 20 enregts je fais une sélection et je
fais clic droit "filtrer par selection" je sais qu'aprés ce filtre il
va me rester 10 lignes et bien la msgbox me renvoie 20 !
Comment que je dois faire ? evidemment sur filtre (OnFilter) ça marche
pas je pensais que sur filtre appliqué c'était quand le filtre
était appliqué mais c'est avant (j'en ai la preuve par la valeur
renvoyée par la msgbox)
elle porte pas un peu mal son nom cette fonction ?
Comment que je dois faire ?
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Rlapt
Le #6196311
Bonjour,

As tu essayé de remplacer x = Me.RecordsetClone.RecordCount par
X = Me.Recordset.RecordCount ?


Bonjour,

voila j'ai fait une fonction qui redimensionne un form en mode continu
suivant le nombre de lignes dans le form
voila à quoi ça ressemble :

Sub Dimensions()
a = 730 'barre haut
b = Me.Section(1).Height 'hauteur de l'entete de formulaire
c = Me.Section(0).Height 'hauteur de la section détail
x = Me.RecordsetClone.RecordCount 'nombre d'enregistrements affichés
If x = 0 Then x = 1
If x > 30 Then x = 30 'le nombre maximum de lignes
affichées

hauteur = a + b + (x * c) + D
DoCmd.MoveSize , , , hauteur
End Sub

---------------------------

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
MsgBox Me.RecordsetClone.RecordCount
Me.CmdAfficherTout.Enabled = True
Call Dimensions
End Sub

------------------------
aprés ça je pensais qu'en appellant la fonction sur filtre appliqué ça
marcherait mais je l'ai dans l'os
La MsgBox Me.RecordsetClone.RecordCount me renvoie le nombre de lignes
d'avant l'application du filtre...
par exp mon form affiche 20 enregts... je fais une sélection et je
fais clic droit "filtrer par selection" je sais qu'aprés ce filtre il
va me rester 10 lignes... et bien la msgbox me renvoie 20 !
Comment que je dois faire ? evidemment sur filtre (OnFilter) ça marche
pas... je pensais que sur filtre appliqué c'était quand le filtre
était appliqué mais c'est avant (j'en ai la preuve par la valeur
renvoyée par la msgbox)
elle porte pas un peu mal son nom cette fonction ?
Comment que je dois faire ?
Merci




camille
Le #6196011
On 3 mar, 08:21, Rlapt
Bonjour,

As tu essayé de remplacer x = Me.RecordsetClone.RecordCount par
X = Me.Recordset.RecordCount ?




Bonjour,

voila j'ai fait une fonction qui redimensionne un form en mode continu
suivant le nombre de lignes dans le form
voila à quoi ça ressemble :

Sub Dimensions()
a = 730 'barre haut
b = Me.Section(1).Height 'hauteur de l'entete de formulaire
c = Me.Section(0).Height 'hauteur de la section détail
x = Me.RecordsetClone.RecordCount 'nombre d'enregistrements affich és
If x = 0 Then x = 1
If x > 30 Then x = 30 'le nombre maximum de lignes
affichées

hauteur = a + b + (x * c) + D
DoCmd.MoveSize , , , hauteur
End Sub

---------------------------

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
MsgBox Me.RecordsetClone.RecordCount
Me.CmdAfficherTout.Enabled = True
Call Dimensions
End Sub

------------------------
aprés ça je pensais qu'en appellant la fonction sur filtre appliqu é ça
marcherait mais je l'ai dans l'os
La MsgBox Me.RecordsetClone.RecordCount me renvoie le nombre de lignes
d'avant l'application du filtre...
par exp mon form affiche 20 enregts... je fais une sélection et je
fais clic droit "filtrer par selection" je sais qu'aprés ce filtre il
va me rester 10 lignes... et bien la msgbox me renvoie 20 !
Comment que je dois faire ? evidemment sur filtre (OnFilter) ça marche
pas... je pensais que sur filtre appliqué c'était quand le filtre
était appliqué mais c'est avant (j'en ai la preuve par la valeur
renvoyée par la msgbox)
elle porte pas un peu mal son nom cette fonction ?
Comment que je dois faire ?
Merci- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


J'ai touvé une solution en plaçant ma procédure sur form current et
pas sur ApplyFilter.


Publicité
Poster une réponse
Anonyme