OVH Cloud OVH Cloud

ListBox avec boutons UP & DOWN

6 réponses
Avatar
Xavier
Bonjour à tous,

J’essaie de créer une ListBox (ça je sais faire) alimentée directement
depuis une table avec ses fameux boutons UP & DOWN pour faire descendre ou
monter l’idem sélectionné.

Comment faire.

Merci pour votre aide.

A bientôt.
Xavier

6 réponses

Avatar
3stone
Salut,

"Xavier"
| J’essaie de créer une ListBox (ça je sais faire) alimentée directement
| depuis une table avec ses fameux boutons UP & DOWN pour faire descendre ou
| monter l’idem sélectionné.

Les fameux boutons Up & Down ??

Si tu parle de simples boutons, tu peux faire quelque chose comme:

Dim SelItem As Integer, i As Integer
With Me.Liste0
For i = 1 To .ListCount
If .Selected(i) = True Then
.Selected(i) = False
SelItem = i
End If
Next i
.Selected(SelItem + 1) = True
End With


Même chose pour le second bouton...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Xavier
Salut Pierre,
Au fait, ce n'est pas ça car c'est la donnée qui doit monter d'un cran avec
le bouton UP, et descendre avec le bouton DOWN

Exemple :

MaListe
ROUGE
BLEU
JAUNE (Item sélectionné)
VIOLET

après click sur bouton UP
ROUGE
JAUNE
BLEU
VIOLET

par contre ta macro je la garde au chaud, sûrement besoin dans un futur.

A+


Salut,

"Xavier"
| J’essaie de créer une ListBox (ça je sais faire) alimentée directement
| depuis une table avec ses fameux boutons UP & DOWN pour faire descendre ou
| monter l’idem sélectionné.

Les fameux boutons Up & Down ??

Si tu parle de simples boutons, tu peux faire quelque chose comme:

Dim SelItem As Integer, i As Integer
With Me.Liste0
For i = 1 To .ListCount
If .Selected(i) = True Then
.Selected(i) = False
SelItem = i
End If
Next i
.Selected(SelItem + 1) = True
End With


Même chose pour le second bouton...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"Xavier"
| Au fait, ce n'est pas ça car c'est la donnée qui doit monter d'un cran avec
| le bouton UP, et descendre avec le bouton DOWN
|
| Exemple :
|
| MaListe
| ROUGE
| BLEU
| JAUNE (Item sélectionné)
| VIOLET
|
| après click sur bouton UP
| ROUGE
| JAUNE
| BLEU
| VIOLET


Ahhh, manipulation "made by Excel" ;-))

En fait, il est totalement impossible de faire simplement "remonter" une valeur.
Dans Access, on ne travaille pas "cellule" mais enregistrement.
Une valeur dans une liste provient donc d'un enregistrement et ces
enregistrements ont un ordre, fut-il l'ordre par défaut.

Pour avoir un ordre précis, il faut donc lui indiquer sur quel champ
tu souhaite réaliser ce tri.
Imaginons que tu tries sur le champ "Couleur", et bien, rien ne te permets
de déplacer librement l'enregistrement qui contient une couleur désignée.

Pour arriver à ce que tu souhaite, il faut donc que tu modifie la valeur du
champ sur lequel est réalisé le tri pour que l'enregistrement en question
se positionne selon le nouvel ordre souhaité.
Le plus logique implique donc l'utilisation d'un champ numérique
dans lequel tu ordonne les valeurs pour que les enregistrements et de là
le champ "Couleur" possède l'ordonance souhaitée.

Vois tu la manipulation à faire ?

Car en fait, ce que tu demande n'est rien d'autre que l'application
d'un tri manuel, mais qui ne possède pas de logique, étant donné
que tu ne peux pas (on ne sait pas) le décrire comme méthode de
tri dans la source de ta liste.

Je serais d'ailleurs curieux de connaître le type des données qui ont
besoin d'être triées "à vue".

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Xavier
Salut,
Effectivement tu peux rire, j'ai enfin décidé de lacher Excel pour me mettre
à Access et je découvre petit à petit les différences entre ces deux
produits. Je faisais partie de ceux qui pensaient qu'on peut se passer
d'Access et tout faire sur Excel, j'avait tord et pour de dire la vérité
j'adore Access autant que j'ai pu aimer Excel.
Néanmoins merci pour ta réponse et je pense que je faire créer une colonne
supplémentaire qui me servira de tri, je vais essayer et on verra bien.

A bientôt.
Xavier


Salut,

"Xavier"
| Au fait, ce n'est pas ça car c'est la donnée qui doit monter d'un cran avec
| le bouton UP, et descendre avec le bouton DOWN
|
| Exemple :
|
| MaListe
| ROUGE
| BLEU
| JAUNE (Item sélectionné)
| VIOLET
|
| après click sur bouton UP
| ROUGE
| JAUNE
| BLEU
| VIOLET


Ahhh, manipulation "made by Excel" ;-))

En fait, il est totalement impossible de faire simplement "remonter" une valeur.
Dans Access, on ne travaille pas "cellule" mais enregistrement.
Une valeur dans une liste provient donc d'un enregistrement et ces
enregistrements ont un ordre, fut-il l'ordre par défaut.

Pour avoir un ordre précis, il faut donc lui indiquer sur quel champ
tu souhaite réaliser ce tri.
Imaginons que tu tries sur le champ "Couleur", et bien, rien ne te permets
de déplacer librement l'enregistrement qui contient une couleur désignée.

Pour arriver à ce que tu souhaite, il faut donc que tu modifie la valeur du
champ sur lequel est réalisé le tri pour que l'enregistrement en question
se positionne selon le nouvel ordre souhaité.
Le plus logique implique donc l'utilisation d'un champ numérique
dans lequel tu ordonne les valeurs pour que les enregistrements et de là
le champ "Couleur" possède l'ordonance souhaitée.

Vois tu la manipulation à faire ?

Car en fait, ce que tu demande n'est rien d'autre que l'application
d'un tri manuel, mais qui ne possède pas de logique, étant donné
que tu ne peux pas (on ne sait pas) le décrire comme méthode de
tri dans la source de ta liste.

Je serais d'ailleurs curieux de connaître le type des données qui ont
besoin d'être triées "à vue".

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"Xavier"
| Effectivement tu peux rire,

Je ne rigole pas et certainement pas "de toi".

Un smile ;-) n'indique pas la moquerie, mais indique plutôt qu'il
ne faut pas prendre la chose trop au sérieux.


| j'ai enfin décidé de lacher Excel pour me mettre
| à Access et je découvre petit à petit les différences entre ces deux
| produits. Je faisais partie de ceux qui pensaient qu'on peut se passer
| d'Access et tout faire sur Excel, j'avait tord et pour de dire la vérité
| j'adore Access autant que j'ai pu aimer Excel.


Il n'est pas question de lacher, détester ou adorer l'un ou l'autre !!!
Ce serait simplement du temps perdu inutilement.
Ce qu'il faut comprendre le plus rapidement possible, c'est que ces
deux softs n'ont strictement rien à voir l'un avec l'autre.

Access n'est surtout pas une "super" Excel, ni un Excel qui permet
d'avoir plus de 65000 "lignes" dans une table ;-))

L'un est un tableur, énormément puissant lorsque l'on parle calcul en tout genre.
Le second, Access, est une base de donnée qui rigole encore lorsque
sa table contient un million d'enregistrements !

Si l'on supprimerai dans Access, la présentation "feuille de données"
(dont on peut parfaitement se passer) moins de gens penseraient
à des programmes frère...


| Néanmoins merci pour ta réponse et je pense que je faire créer une colonne
| supplémentaire qui me servira de tri, je vais essayer et on verra bien.

Rappelle toi ceci :
Excel est basé sur des celulles, la précédente, celle du dessus, du dessous...
Dans Access, rien de tout cela. Access est basé sur des enregistrements
qui possèdent une clé primaire et des index. Et seuls ces deux propriétés
permettent d'ordonner et pour la clé primaire, d'identifier ces enregistrements.

Pour une meilleure approche, tu devrais lire quelque chose comme ceci:
http://www.3stone.be/access/articles.php?lng=fr&pg"1
qui une fois assimilé te permettra d'éviter les erreurs grossières et les
voies sans issues.

Bon courage dans l'apprentissage.
Et n'oublies pas revenir en cas de difficulté !

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Xavier
Salut,

J'avais bien compris que tu ne te moquais pas de moi, par contre ta remarque
m'a fait rire et evidemment je ne lacherai pas Excel pour autant, mais je
remarque à quel point les deux produits sont complémentaires.

Merci et bonne soirée.
"3stone" wrote:

Salut,

"Xavier"
| Effectivement tu peux rire,

Je ne rigole pas et certainement pas "de toi".

Un smile ;-) n'indique pas la moquerie, mais indique plutôt qu'il
ne faut pas prendre la chose trop au sérieux.


| j'ai enfin décidé de lacher Excel pour me mettre
| à Access et je découvre petit à petit les différences entre ces deux
| produits. Je faisais partie de ceux qui pensaient qu'on peut se passer
| d'Access et tout faire sur Excel, j'avait tord et pour de dire la vérité
| j'adore Access autant que j'ai pu aimer Excel.


Il n'est pas question de lacher, détester ou adorer l'un ou l'autre !!!
Ce serait simplement du temps perdu inutilement.
Ce qu'il faut comprendre le plus rapidement possible, c'est que ces
deux softs n'ont strictement rien à voir l'un avec l'autre.

Access n'est surtout pas une "super" Excel, ni un Excel qui permet
d'avoir plus de 65000 "lignes" dans une table ;-))

L'un est un tableur, énormément puissant lorsque l'on parle calcul en tout genre.
Le second, Access, est une base de donnée qui rigole encore lorsque
sa table contient un million d'enregistrements !

Si l'on supprimerai dans Access, la présentation "feuille de données"
(dont on peut parfaitement se passer) moins de gens penseraient
à des programmes frère...


| Néanmoins merci pour ta réponse et je pense que je faire créer une colonne
| supplémentaire qui me servira de tri, je vais essayer et on verra bien.

Rappelle toi ceci :
Excel est basé sur des celulles, la précédente, celle du dessus, du dessous...
Dans Access, rien de tout cela. Access est basé sur des enregistrements
qui possèdent une clé primaire et des index. Et seuls ces deux propriétés
permettent d'ordonner et pour la clé primaire, d'identifier ces enregistrements.

Pour une meilleure approche, tu devrais lire quelque chose comme ceci:
http://www.3stone.be/access/articles.php?lng=fr&pg"1
qui une fois assimilé te permettra d'éviter les erreurs grossières et les
voies sans issues.

Bon courage dans l'apprentissage.
Et n'oublies pas revenir en cas de difficulté !

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/