Exportation de données
- Messages
- 9'245
- Excel
- Vista Office 2007FR
- Inscrit
- 08/12/2007
- Emploi
- retraité Sce.Méthodes
re,
J'y connait rien dans les UserForm,
de plus, je n'ai jamais réussi à installer Calendar.
donc, je ne vais pas pouvoir beaucoup t'aider.
Tu n'utilise plus ma macro "Sub ExtraitDate()", je ne vois pas ce qui la lance !
je pourrais ajouter le critère "Client" dans cette macro,
c'est tout ce que je pourrais faire !
dis-moi si çà suffirait
désolé
Claude
Bonjour Claude, le forum,
En ce qui me concerne, je n'ai jamais été en mesure d'installer DatePicker...
Tu n'utilise plus ma macro "Sub ExtraitDate()", je ne vois pas ce qui la lance !
J'utilise toujours cette macro que tu m'as concocté. Elle est dans le module "FiltreDate" dans VBA. Elle contient même ta signature. Tu peux ajouter le filtre clients à ta macro si ça fonctionne, ce sera très bien.
Merci pour ton aide,
Claude
- Messages
- 9'245
- Excel
- Vista Office 2007FR
- Inscrit
- 08/12/2007
- Emploi
- retraité Sce.Méthodes
Bonjour,
Vois si çà te vas
Sub ExtraitDate()
Dim Lg%, Crit As Range
''Macros par Claude Dubois pour "klode" Excel-Pratique le 22/07/10 *** modifiée le 18/01/2012
Application.ScreenUpdating = False
With Sheets("Liste")
Lg = .Range("A65536").End(xlUp).Row
If Range("a2") = "" And Range("b2") = "" Then GoTo Filtre
If Range("b2") = "" Then
Range("d2") = "=Liste!e2=$a$2"
Else
Range("d2") = "=and(Liste!e2>=$a$2,Liste!e2<=$b$2)"
End If
Filtre:
.Range("a1:u" & Lg).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Range("c1:d2"), CopyToRange:=Range("a4:k4"), Unique:=False
Range("d2").ClearContents
End With
'---- tri ---
Range("a4:k" & Range("a65000").End(xlUp).Row).Sort _
Key1:=Range("a4"), Order1:=xlAscending, _
Key2:=Range("b4"), Order2:=xlAscending, Header:=xlYes, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom
Range("a1").Activate
End SubAmicalement
Claude
Bonjour Claude, le forum,
À première vue, le nouveau filtre fonctionne bien. J'ai ajouté un client fictif et les données se sont affichées pour ce client. J'ai remarqué que tu as fait un changement dans VBA. Il y a maintenant une référence à mDF_XLcalendar.xla. Peux-tu me donner plus d'infos? J'ai remarqué que mes calendriers ne fonctionnent plus. Je vais attendre ton conseil avant de faire une modification.
Tu es un pro et j'apprécie grandement ton aide,
Merci,
Claude
- Messages
- 9'245
- Excel
- Vista Office 2007FR
- Inscrit
- 08/12/2007
- Emploi
- retraité Sce.Méthodes
Bonjour à tous,
Ne m'en demande pas trop sur "mDF_XLcalendar.xla"
c'est une macro complémentaire que j'avais téléchargé il y a plusieurs mois
sans pouvoir la faire fonctionner, et là sur ton fichier elle marche !!
j'ai simplement modifié la feuille "Booking"
et supprimé le VBA de la feuille, si tu veux revenir comme avant et retrouver ton Calendar,
copie la feuille "Booking" sur ton ancien fichier et réactive le VBE de la feuille en
supprimant les apostrophes.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
[barrer]'If InStr("$M$2-$O$2", Target.Address) > 0 Then UserForm2.Show[/barrer]
If InStr("$a$2-$b$2", Target.Address) > 0 Then UserForm2.Show
End SubVérifie que l'affectation du bouton est sur le bon fichier.
- ---- Rappel -----
- si tu renseigne seulement Date début, çà ne sort que cette date.
- si tu renseigne les 2 dates, çà sort la fourchette
Bonjour à tous,
Ne m'en demande pas trop sur "mDF_XLcalendar.xla"
c'est une macro complémentaire que j'avais téléchargé il y a plusieurs mois
sans pouvoir la faire fonctionner, et là sur ton fichier elle marche !!
j'ai simplement modifié la feuille "Booking"
et supprimé le VBA de la feuille, si tu veux revenir comme avant et retrouver ton Calendar,
copie la feuille "Booking" sur ton ancien fichier et réactive le VBE de la feuille en
supprimant les apostrophes.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
[barrer]'If InStr("$M$2-$O$2", Target.Address) > 0 Then UserForm2.Show[/barrer]
If InStr("$a$2-$b$2", Target.Address) > 0 Then UserForm2.Show
End SubCopie la nouvelle macro "ExtraitDate" et vérifie que l'affectation du bouton est sur le bon fichier.
----- Rappel -----
- si tu renseigne seulement Date début, çà ne sort que cette date.
- si tu renseigne les 2 dates, çà sort la fourchette
- si tu renseigne uniquement le client, çà ne tient pas compte des dates
- Si tu efface les 3 critères, çà affiche tout.
Amicalement
Claude
Bonjour Claude, le Forum,
sans pouvoir la faire fonctionner, et là sur ton fichier elle marche !!
C'est sûrement ce qu'on appelle les mystères de l'informatique... Il ne faut pas trop chercher à comprendre!!
supprimant les apostrophes
Oui, j'avais vu les apostrophes. Je voulais avoir ton avis avant de modifier quoi que ce soit.
----- Rappel -----
- si tu renseigne seulement Date début, çà ne sort que cette date.
- si tu renseigne les 2 dates, çà sort la fourchette
- si tu renseigne uniquement le client, çà ne tient pas compte des dates
- Si tu efface les 3 critères, çà affiche tout.
C'est vraiment plus que je n'espérais! Maintenant, je pourrai faire les choix que je veux.
Il me reste un autre souci à solutionner, celui de ma BDD Clients classé par ordre alphabétique lorsque je crée un nouveau client. Si tu aurais une idée, je pourrais tenter de l'intégrer à mon userform. Je me débrouille quand même assez bien, c'est juste la formulation de code qui me fait défaut.
Merci de ton aide,
Claude
- Messages
- 9'245
- Excel
- Vista Office 2007FR
- Inscrit
- 08/12/2007
- Emploi
- retraité Sce.Méthodes
Bonjour,
Tu parles de la liste Validation en C2 ?
c'est la colonne A de la feuille "BDD Clients", je crois,
tu peux rendre cette liste dynamique en la nommant par exemple "Client" et
dans "Fait référence à:" tu mets cette formule
=DECALER('BDD Clients'!$A$3;;;NBVAL('BDD Clients'!$A:$A)-2)comme çà, si tu ajoute des nouveaux clients, la liste validation sera toujours à jour.
Pour les UserForm, comme déjà dit c'est pas mon truc, je n'en utilise pas.
Amicalement
Claude
Bonjour Claude, le Forum,
si tu ajoute des nouveaux clients, la liste validation sera toujours à jour.
Je vais essayer cela plus tard, pour l'instant je suis au boulot sur la route... Je pense bien que ça fera l'affaire.
Pour les UserForm, comme déjà dit c'est pas mon truc, je n'en utilise pas.
Aucun problème, je ne voulais pas t'embêter avec ça. Tu m'as déjà beaucoup aidé et je l'apprécie grandement!
Merci,
Claude
Bonjour Claude, le Forum,
- Si tu efface les 3 critères, çà affiche tout.
J'ai réussi à tester et tout fonctionne bien. C'est juste que si je ne mets pas de critère, ça affiche tout, même la ligne 2 de la feuille Liste où il y a les renseignements comme $B$18, $A$22, $A$24, etc. Évidemment, il ne faut pas que s'affiche ces renseignements, c'est complètement inutile. J'ai essayé de modifier la formule, mais c'est toujours le même résultat. Pourrais-tu y jeter un oeil si tu as encore mon fichier?
Merci,
Claude
- Messages
- 9'245
- Excel
- Vista Office 2007FR
- Inscrit
- 08/12/2007
- Emploi
- retraité Sce.Méthodes
Bonjour,
La feuille "Liste" est une base de données avec
une ligne d'en-têtes suivie des données.
à quoi sert cette ligne 2 ?
elle ne devrait pas être dans la BDD,
peux-tu la supprimer ou la mettre au dessus des en-têtes ?
édit: tu as récupérer ton Calandar ?
à te relire
Claude
Bonjour,
dubois a écrit :Bonjour,
La feuille "Liste" est une base de données avec une ligne d'en-têtes suivie des données. à quoi sert cette ligne 2 ?
elle ne devrait pas être dans la BDD, peux-tu la supprimer ou la mettre au dessus des en-têtes ?
D'après ce que j'ai pu voir, la ligne 2 ne sert qu'à montrer la relation de chaque colonne avec une autre feuille, tout semble se faire avec VBA sans cette ligne 2. J'ai tout simplement supprimé la ligne 2 comme tu as suggéré et tout semble fonctionner correctement.
édit: tu as récupérer ton Calandar ?
à te relire
Claude
Oui, j'ai récupéré mon calendar.
Merci,
Claude