Autres Trier une listbox par date

Damien281211

XLDnaute Occasionnel
Bonjour a tous
Je vous explique mon soucis
J'effectue une recherche via un formulaire ans une textbox. grâce à une recherche avancée je charge uniquement certaine ligne de ma base de données en fonction d'une reference précise.
Mes données se chargent dans une listbox.
Je souhaiterais savoir si sest possible de trier celle-ci par date chronologique ou alors trier ma colonne de tableau de recherche avancée?
Comment faire l'une ou l'autre ?
Merci d'avance
 

fanch55

XLDnaute Barbatruc
Écoutes, j'ai l'impression qu'on s'égare et qu'on ne parle pas du fond :
J'ai pris ton fichier du post#189,: le calendrier peut être rappelé .
J'ai appliqué les modifs du post#191: le calendrier est appelable 1 fois sinon erreur
1586282151121.png

Il n'y a pas d'autres modifications que celles que tu as proposées ... :mad:

Mon objectif pour le calendrier qui est loin de celui de cette discussion , est le suivant :

  1. - gérer la position du calendrier dans un userform
    (j'ai par ailleurs suivi le même cheminement que toi sans Api)
    La textbox (ou combobox) lui est indiquée juste pour déterminer le top et le left.
  2. - mettre ce que je veux dans le Caption
  3. - placer le focus sur le bouton correspondant à la date de la textbox, ce qui me permet de quitter l'userform juste en faisant Entrée si la première date affichée me convient (pas de déplacement à effectuer ni de clic souris)
  4. - pouvoir donner en entrée une date calculée sans forcément la recevoir en retour .

Le calendrier au post#187 remplit toutes ces fonctions, j'avais juste un doute sur sa capacité à se positionner au bon endroit mais il fonctionne.

Je vais m'occuper maintenant à continuer d'aider Damien .
 

Damien281211

XLDnaute Occasionnel
Bonjour a tous
Avec toutes mes excuses pour cette absence, reprise du boulot depuis lundi donc bcp de retard et me revoilà.
Vous avez très très bien avancé sur mon projet tous les deux et un grand merci.
J'avoue ne pas avoir compris vos discutions sur le calendrier
 

Damien281211

XLDnaute Occasionnel
cp4
j'ai repris l'ensemble des fichiers que tu as travaillé,
la dernière version "Amigo Stock v3", comment dire, CHAPEAU
pour ma part, voila ce que j'ai remarqué:
- on peut taper une référence dans la combo donc impeccable
- le transfert se fait nickel avec l'archivage et la suppression dans des lignes également
j'ai cependant un problème avec notre histoire de "," et ".".
j'ai remis la config du séparateur décimale avec la "," , sur le fichier de Fanch55, il n'y a plus se problème je vais voir cela avec.

fanch55
pour ton dernier fichier "Stock Cadre test-id, également CHAPEAU
beau boulot, il y a matière a travailler.
peux-tu me dire à quoi sert la colonne ID?
je suis pleinement conscient que ton travail sur le calendrier a dut etre laborieux et d'ailleur merci, pourrait-on également avoir la possibilité de taper la date, et en étant un peu relou, en entrant la date de congel calculer automatiquement la date DLC en rajoutant 546 jours?

je pense éffectuer un mix de vos deux fichiers aussi bien pour les entrées que pour les transfert.
qu'en pensez-vous?
J'ai perdu le fil de vos questions en revanche pour poursuivre
encore merci à vous.
 

Damien281211

XLDnaute Occasionnel
je remets les deux derniers fichier en question
j'ai rajouté dans l'onglet "Stock_Petite_Congel" la colonne "Transféré le" et dans l'onglet "Archivage" la colonne "Transféré le et "Sortie le".
 

Pièces jointes

  • Amigo Stock Cadres - V3.xlsm
    86 KB · Affichages: 5
  • Stock Cadres_test id.xlsm
    81.4 KB · Affichages: 4

fanch55

XLDnaute Barbatruc
@Damien281211

date Dlc
C'est déjà prévu, elle propose immédiatement une date à 6 mois en "dur" dans le code.
Ce n'est pas un problème de modifier la durée, j’attendais juste de savoir de combien .
Peut-être pourrait-on la mettre en paramètre modifiable qq part ?
Je vais voir l'impact si on laisse saisir la date et les vérifications à faire.

Id
C'est un identifiant unique chronologique attribué lors de l'enregistrement ( à ta demande)
pour identifier toutes les saisies faisant parties du même enregistrement.
Il est un peu redondant avec la colonne "Entrée le", sauf que par la suite tu peux rechercher quels sont les produits entrés à telle date avec la colonne "Entrée le", et lesquels font parties d'un même ensemble avec la Colonne "ID" .
Tout ça si tu met un filtre sur ton tableau, je vais corriger pour le mettre d'office, le filtre est bien pratique.


Remarque: le tableau du stock est trié à chaque enregistrement pour que les dernières saisies s'affichent en haut pour contrôle immédiat .

Mixage:
Il n'y a aucun pb à mixer les 2, cependant il faudrait dire tout de suite à @cp4 si tu désires conserver le multipage de mon fichier qui permet via des onglets de faire les 3 actions, car cela implique de mélanger mon code avec le sien donc un seul Userform .
Pour le transfert et les sorties, as-tu des critères de sélection sur la DLC, il faudrait le lui dire tout de suite .
 

patricktoulon

XLDnaute Barbatruc
oui les mois en lettre sont juste l'affichage dans la combo tu peux abréger
c'est l'index+1 qui me sert de valeur mois dans le concat de la date ;)
VB:
Case 1, 2
        Calendar.Cbmonth.List = Split("Janv., Févr., Mars, Avr, Mai, Juin., Juil., Août, Sept., Oct., Nov., Déc.", ",")
        Listdays = Split("Lun,Mar,Mer,Jeu,Ven,Sam,Dim,Sem", ",")
    Case 0
        Calendar.Cbmonth.List = Split("January, Febr., March, April, May, June, July, August, Sept., Oct., Nov., Dec.", ",")
        Listdays = Split("Sun,Mon,Tue,Wen,Thur,Fri,Sat,Week", ",")
    End Select
mais ne le donne pas trop avec cette version ;)
 

patricktoulon

XLDnaute Barbatruc
Damien bonjour
on c'est un peu égaré avec ce calendrier mais pour revenir au tri par date
sait tu que l'on peu trier dans l'ordre /désordre un listview car elle possede la fonction sortedkey
et qu'une fois triée il te serait facile de deleter les lignes non correspondantes
au préalable garder dans une variable globale le tableau en entier et le réinjecter a souhait
 

patricktoulon

XLDnaute Barbatruc
il faut le changer c'est tout
et pour 2013 et plus il est soit disant plus dispo mais il n'en ai rien il est simplement pas enregistrer
alors sur le net on trouve soit disant le mscomm32.ocx qui le remplace et la plus part du temps c'est une vérole fait par un Salopard ou un truc bricolé par un constipé

ALORS QUE!!! LE LISTVIEW EST BIEN PRÉSENT DANS L INSTALLATION D'ORIGINE 2013 ET PLUS IL FAUT SIMPLEMENT LE DÉPLACER ET L'ENREGISTRER DANS LE REGISTRE
c'est tout bonnement le MSCOMMCTL.OCX

je te donne la démarche si tu veux
 

fanch55

XLDnaute Barbatruc
Salut à tous,
J'avais bien pensé à la Listview qui est plus souple, plus riche et plus puissante que la listbox .
Je l'ai utilisé de nombreuses fois en VB6, on en voyait partout ...
les versions d'Excel d'alors étaient toutes en 32 bits ...
Quand j'ai installé Office 2010, c'était également en 32 bits : disparition de la Microsoft Windows Common Controls 6.0 .
Pas trouvé alors dans le package, il a fallu que je télécharge l'Ocx, avec bien sûr pleins de versions infectes et infectées comme l'a fait remarquer Patrick.
Bref, j'ai donc du agir dans le registre pour que cet Ocx soit reconnu par Excel 2010.
Le fonctionnement était correct.
Puis est venue la vague des versions 64bits.
Certaines entreprises ont eu la bonne? idée de tout réinstaller en 64 bits , en ce disant que ce qui peut faire le plus peut également faire le moins (à l'encontre des recommandations Microsoft)...
Donc, upgrade de mon Excel 2010 en 64 bits, impossible de faire fonctionner correctement les listviews et autre DateTimePicker .
Native 64-bit processes in Office 2010 cannot load 32-bit binaries. This includes the common controls of MSComCtl (TabStrip, Toolbar, StatusBar, ProgressBar, TreeView, ListViews, ImageList, Slider, ImageComboBox) and the controls of MSComCt2 (Animation, UpDown, MonthView, DateTimePicker, FlatScrollBar).These controls were installed by previous versions of Microsoft Office and are installed by 32-bit Office 2010. An alternative must be found for existing Microsoft Office VBA solutions that utilize these controls when the code is migrated to 64-bit Office 2010. 64-bit Office 2010 does not provide 64-bit versions of the Common Controls.
Obligé de reprendre une foultitude de dév .
Depuis lors, j'ai "oublié" la Listview ....

Aujourd'hui je travaille avec Excel 2016 64bits, j'ai conservé une version 32bits sur un autre portable pour toujours vérifier la compatibilité 32/64 .

Piqué par la curiosité, j'ai regardé aujourd'hui dans les complément d'office 2016 et j'ai retrouvé à ma grande surprise l'Ocx en question et la possibilité d'utiliser le Listview.

@cp4 : je vais te fournir un classeur avec le listview intégré avec ma version.
Tu pourras vérifier s'il est fonctionnel avec la tienne et en ce cas je modifie le projet de Damien .
 

Pièces jointes

  • 1586429562122.png
    1586429562122.png
    35 KB · Affichages: 4

Discussions similaires

Statistiques des forums

Discussions
312 374
Messages
2 087 730
Membres
103 655
dernier inscrit
MOUNIRACH16