Question d'esthétique !!

Le
DT
Bonjour

J'ouvre différents UserForm tour à tour mais j'aimerais que la Feuil4 soit
toujours en "fond" derrière les UserForm. J'ai donc mis des Feuil4.Activate
un peu partout dans mes codes mais rien n'y fait, un breve instant, je vois
la feuille qui est en traitement.
En prenant comme modèle le code ci dessous, je comprend bien qu'il active la
Feuil4 mais qu'a un certain moment il selectionne la Feuil2. Y a t'il pas
une solution pour figer la feuille de fond Feuil4 ?

Merci de votre aide
David


Private Sub UserForm_Initialize()
Feuil4.Activate

Feuil2.Select
If Feuil2.AutoFilterMode = True Then
Selection.AutoFilter
Range([A1], [J65000].End(xlUp)).AutoFilter
Else
Trier
IniObjet
End If

Feuil4.Activate
End Sub
Vos réponses Page 4 / 5
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
DT
Le #21103821
Bonjour Daniel

Pour ma part, toujours l'erreur

Je peus t'envoyer le projet complet en BAL perso ?

Au cas ou si nous avons pas la même chose

Cordialement

David
Daniel.C
Le #21103951
http://cjoint.com/?cbmaicd8rx
Daniel

Bonjour Daniel

Pour ma part, toujours l'erreur

Je peus t'envoyer le projet complet en BAL perso ?

Au cas ou si nous avons pas la même chose

Cordialement

David


DT
Le #21103931
Dans le fichier que tu as envoyé, il y a pas le code de michdenis (et non
plus le tien) qui permet de charger la ListBox plus vite soit à la place de
:

With Me.LstResultat
.Clear
For Each c In plage1
.AddItem c.Value
.List(.ListCount - 1, 1) = c.Offset(, 1)
.List(.ListCount - 1, 2) = c.Offset(, 2)
.List(.ListCount - 1, 3) = c.Offset(, 3)
.List(.ListCount - 1, 4) = c.Offset(, 4)
.List(.ListCount - 1, 5) = c.Offset(, 5)
.List(.ListCount - 1, 6) = c.Offset(, 6)
.List(.ListCount - 1, 7) = c.Offset(, 7)
.List(.ListCount - 1, 8) = c.Offset(, 8)
.List(.ListCount - 1, 9) = c.Offset(, 9)
Next
End With

il faut remplacer par :

Dim DerLig As Long
With Feuil2
DerLig = .Range("A:J").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
With Me.LstResultat
.Clear
.ColumnCount = 10
.BoundColumn = 1
.List = Feuil2.Range("A2:J" & DerLig).Value
End With
End With
michdenis
Le #21104021
Bonjour Daniel,

| il y a pas le code de michdenis

How dare you ?

;-)))
Daniel.C
Le #21104091
Bonjour Denis,
Ach ! Ich bin very confused ;-)))
Daniel

Bonjour Daniel,

il y a pas le code de michdenis



How dare you ?

;-)))


Daniel.C
Le #21104081
Euh, c'est ton dernier envoi. Envoie le fichier, qu'on soit bien
synchro.
Daniel

Dans le fichier que tu as envoyé, il y a pas le code de michdenis (et non
plus le tien) qui permet de charger la ListBox plus vite soit à la place de :

With Me.LstResultat
.Clear
For Each c In plage1
.AddItem c.Value
.List(.ListCount - 1, 1) = c.Offset(, 1)
.List(.ListCount - 1, 2) = c.Offset(, 2)
.List(.ListCount - 1, 3) = c.Offset(, 3)
.List(.ListCount - 1, 4) = c.Offset(, 4)
.List(.ListCount - 1, 5) = c.Offset(, 5)
.List(.ListCount - 1, 6) = c.Offset(, 6)
.List(.ListCount - 1, 7) = c.Offset(, 7)
.List(.ListCount - 1, 8) = c.Offset(, 8)
.List(.ListCount - 1, 9) = c.Offset(, 9)
Next
End With

il faut remplacer par :

Dim DerLig As Long
With Feuil2
DerLig = .Range("A:J").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
With Me.LstResultat
.Clear
.ColumnCount = 10
.BoundColumn = 1
.List = Feuil2.Range("A2:J" & DerLig).Value
End With
End With


DT
Le #21104061
Bonjour Denis.

Bin oui j'ose le dire !!!

Voici daniel

http://www.cijoint.fr/cjlink.php?file=cj201002/cijfddl48z.xls

Merci à vous deux pour l'avancement de mon projet
DT
Le #21104051
Oups. Fichier complet. Désolé.

Manip :

1) Historique carburant

2) Dans Alias par exemple T3

3) Rechercher

4)On peux constater qu'un filtre s'effectue.

4) Constate le nombre d'enregistrement en haut à gauche, 65 à la place de 5

5) Retour Menu et dans l'onglet "HISTORIQUE", on constate que le filtre
s'est bien effectué. Le 65 est en fait l'avant dernière ligne du tableau de
la feuille !
Daniel.C
Le #21104371
En effet, tu ne peux pas copier les enregistrés filtrés d'un coup. Soit
tu adoptes ma méthode pour les résultats (plus lente, mais ça dépend du
nombre d'enregistrements filtrés) en conservant le code de Michdenis
pour le chargement initial, soit il faut changer de méthode et
effectuer un filtre avancé / élaboré avec résultat su un autre
emplacement, puis utilisation du code de michdenis pour le chargement
du résultat.
Daniel

Oups. Fichier complet. Désolé.

Manip :

1) Historique carburant

2) Dans Alias par exemple T3

3) Rechercher

4)On peux constater qu'un filtre s'effectue.

4) Constate le nombre d'enregistrement en haut à gauche, 65 à la place de 5

5) Retour Menu et dans l'onglet "HISTORIQUE", on constate que le filtre s'est
bien effectué. Le 65 est en fait l'avant dernière ligne du tableau de la
feuille !


DT
Le #21104851
Bon bin la c'est le coup derrière la tête !!!

En faisant l'essai avec 1100 enregistrement (moins d'un an), le grand
gagnant est michdenis avec 3 secondes avant ouverture du formulaire contre
28 secondes pour toi ! mais les filtres ne fonctionnent plus et le but
initial été bien celui ci au début du projet.

Être si prés de la fin du projet et changer beaucoup de chose en posant
encore de multiples questions ! Temps passé 15 jours environ ! (non perdu,
car on apprend)

Le choix est difficile ....

Je vais digérer tous cela devant une bonne tasse de café !!!

Merci pour tout à vous deux.

Je reviens si la corde à cédée !!!

David
Publicité
Poster une réponse
Anonyme