Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Drag N Drop Suite

H

HoOk

Guest
Bonjour à toutes et à tous,

Tout d'abord un grand merci pour ce site et pour les ressources que vous mettez à dispo.
Suite à un fil sur l'utilisation des Drag N Drop (Demo n°3 de @+Thierry), je souhaite "personnaliser" cette appli pour l'adapter à mes besoins. Malheureusement, mon niveau ne me permet pas d'arriver à ce que je veux et je m'en remet aux bonnes ames dispo.
Je souhaite pouvoir utiliser mon UserForm, qui serait initialisé à partir d'une liste d'éléments, et faire un drag & drop vers ma feuille Excel. Cependant, la valeur à dropper peut contenir plusieurs colonnes (cf pj). Est-ce qu'il vous semble possible de mettre à jour un tableau de cette façon ?.

Merci bcp de votre aide

++
 

Pièces jointes

  • USFDrag-N-Drop.zip
    18.9 KB · Affichages: 83
  • USFDrag-N-Drop.zip
    18.9 KB · Affichages: 78
  • USFDrag-N-Drop.zip
    18.9 KB · Affichages: 77
V

Vériland

Guest
Bonjour HoOk et toi le Forum,

Bah...on ne va tout de même pas effectuer cette manip sur la base d'une démo de Thierry...ben non!!!...cette démo sert à appliquer dans un autre fichier le principe Drag and Top...donc là il faudrait que tu nous donnes une ébauche sur la base d'un fichier à toi pour que l'on puisse t'aider davantage...

Par contre sur la question de se servir d'une base de données ce n'est effectivement pas dans cette démo que tu auras la réponse puisque Thierry a simplement voulu montrer le principe drag and Drop dans un Userform...c'est un exemple...donc pour cette démo les ListBox et ComboBox1 se remplissent par un For...

Private Sub UserForm_Initialize()
Dim i As Byte
For i = 1 To 10
ListBox1.AddItem "ListBox Item to drag " _
& (ListBox1.ListCount + 1)
ComboBox1.AddItem "Combobox Item to Drag " _
& (ComboBox1.ListCount + 1)
Next i
ComboBox1.DragBehavior = fmDragBehaviorEnabled
End Sub


Pour ta question il s'agirait de procéder autrement...à savoir remplir la Listbox sur la base de différentes données qui se trouveraient sur une feuille...

donc là il faudrait procéder ainsi :

Suposons que ta base de données se trouve sur la feuille "Base" dans la colonne A...à l'ouverture de l'Userform pour avoir cette liste dans la ListBox1 tu mets :

Private Sub UserForm_Initialize()
For I = 1 To Sheets("base").Range("A1").End(xlDown).Row
Liste = Sheets("base").Range("A" & I).Value
ListBox1.AddItem Liste
Next I
End Sub


...bon là je n'ai pas déclaré I et liste qui peuvent l'être en début de module...enfin cela donnerait ceci en plus...

Dim I As Integer
Dim Liste As String

Voilà...essaye déjà avec çà

Bonne journée



PS : Macro à copier depuis le forum auquel cas tu risques d'avoir les attributs gras du post dans ta macro...
 
H

HoOk

Guest
Salut le forum, lu Vériland,

Merci pour ton aide, j'ai pu avancer un peu sur tes conseils mais le résultat reste encore assez confus :=|
Est-ce que qq1 pourrait maider à démeler ce schmilblik SVP ?. Si vous jetez un oeil au fichier joint, vous verez qu'il est nécessaire de sélectionner les noms droppés dans la partie droite un par un pour les mettre à jour dans la feuille. Est-ce qu'il est possible d'éviter cela ?.

Ensuite, j'aimerai, en fonction des noms sélectionnés, que le tableau se mette à jour avec l'ensemble des informations renseignées dans la feuille 'Base'.

Est-ce que qq1 pourrait m'aider SVP ?. Encore merci

Thx
 

Pièces jointes

  • Classeur2.zip
    18.8 KB · Affichages: 65
  • Classeur2.zip
    18.8 KB · Affichages: 66
  • Classeur2.zip
    18.8 KB · Affichages: 74
V

Vériland

Guest
Bonsoir HoOk et toi le Forum...lool

ben voilà qui est plus facile avec ton fichier...Alors j'ai apporté les réponses dans le fichier joint en essayant d'être au plus près...mais bon...

j'ai préféré traiter l'information depuis l'userform avec une ComboBox au lieu d'une listBox...(va t'en savoir...loool)]...mais on peut revenir sur ton principe du glisser...


Ensuite pour ce qui est de reproduire le tableau avec les valeurs je te suggère d'une part d'utiliser le format conditionnel et d'autre part une formule avec RECHERCHEV...(si Monique passe par là p'têt qu'elle y mettra kekchose de mieux...hi hi hi)

Voilà pour l'instant...Bonne programmation


 

Pièces jointes

  • Classeur_pour_HoOk_VL.zip
    14.9 KB · Affichages: 74
@

@+Thierry

Guest
=> DEMO UserForm ListBox MultiColonne "Drag N Drop" Vers Cellules... !

Bonjour HoOk, Vériland, le Forum

J'avais vu ce fil au départ avec ma bonne vieille démo Lien supprimé, et j'avais déjà noté la difficulté pour faire un vrai Drag and Drop d'un UserForm Vers Une Feuille...

La difficulté majeur étant que je n'arrive pas à trouver un évènement "BeforeDragOver" & "BeforeDropOrPaste" avec Worksheet... Alors il fallait finter...

En prime HoOk, nous la complique avec ce critère "la valeur à dropper peut contenir plusieurs colonnes" car l'Objet "DataObject " indispensable dans un Drag and Drop, ne peut contenir qu'une seule string de text...

Donc ce que vous allez voir est assez proche d'un résultat de Drag N Drop, mais c'est un faux... (!!) Mais çà fait comme un vrai (!!!) lol

Vériland, toi tu as carrément zappé l'idée du Drag N Drop par rapport au classeur de HoOk... Mais bon c'est le résultat qui compte et probablement c'est le plus simple pour HoOk de faire comme tu proposes...

Mais bon Just For The Fun je vous laisse voir le truc de ouf que j'ai encore trafiqué... Arf oui j'utilise l'Application.InputBox depuis que Ti me l'a faite découvrir !!!

Bon Appétit
@+Thierry
 

Pièces jointes

  • USF_Drag_N_Drop_To_Cells.zip
    32.4 KB · Affichages: 102
@

@+Thierry

Guest
Re: => DEMO UserForm ListBox MultiColonne "Drag N Drop" Vers Cellules... !

Hé Hé Hé,


Etonnant que Vériland ne soit pas encore passé par là, vu qu'il traine dans le Forum....


@+Thierry
 
V

Vériland

Guest
Re: => DEMO UserForm ListBox MultiColonne "Drag N Drop" Vers Cellules... !

Et hop...!!!...
...Drag....n'...Drop...en plein dans le trou...loool

Bonsoir HoOk, Vériland, Thierry et toi le Forum

oups...heuh...Vériland est en trop là...loool

Thierry c'est une belle démo...elle est complète...tu as sortie l'artillerie lourde là...


Bon ben moi je n'ai pas interprêté la question de départ de la même manière...mais bon...c'est pas le problème...ce qui compte c'est qu'il y a dans ce fil de bonnes bases qui vont certainement combler HoOk...on peut dire qu'il a le choix...mais p'têt qu'il est encore entrain de tester...

en tout cas moi je viens de tester ta démo, elle tourne bien...à ceci prêt qu'elle serait parfaite s'il y avait pas ce satané beug lorsque la Listbox1 est vide...faudrait p'têt un "on error" qui permettrait d'éviter la gestion du nul lorsqu'il n'y a plus de valeur dans la ListBox1...enfin c'est un détail...s'agissant d'une démo...

Quoi ???...ah oui...Allez-y Maître Vébéha...

USF_Drag_N_Drop_To_Cells.zip



Bonne Soirée



PS : Bon...j'ai vérifié les dates des post...ça va...y'a pas de décalage Lien supprimé...lool
 
H

HoOk

Guest
Salut le Forum, Vériland et @+Thierry,

Juste un petit mot pour vous dire un GRAND merci. Je n'ai pas encore épluché la nouvelle démo de Thierry mais ca à l'air terrible. Merci donc à tous les deux : Vériland pour le coté pratique (ca répond tt à fait à ce que je voulais faire), Thierry pour le coté théorique (c'est magique !!).

Merci donc et à bientôt pour de nouvelles aventures
 
H

HoOk

Guest
Re all,

Après une longue séance d'arrachage de cheveux, à essayer de comprendre le fonctionnement de ce petit bijoux, j'aurais juste une petite question supplémentaire SVP : Y'a t-il une limite dans l'appli (USF_Drag_N_Drop_To_Cells.zip) qui empecherait d'afficher plus de 15 colonnes dans le tableau ?.
Je viens de retourner le travail de Thierry dans tous les sens (Ouf, j'ai fait une sauvegarde avant !), et j'ai systématiquement un message après la 9ème colonne dans le projet :
"Erreur d'execution '380'. Impossible de définir la propriété Column."

Merci d'avance ....
 
@

@+Thierry

Guest
Re: => DEMO UserForm ListBox MultiColonne "Drag N Drop" Vers Cellules... !

Bonsoir HoOk, Vériland; le Forum

Pour la dernière question de HoOk.... Un tour dans l'aide te diras ceci :

"La définition de la propriété ColumnCount sur 0 affiche zéro colonne et la définition sur -1 affiche toutes les colonnes disponibles. Pour une source de données indépendante, il y a une limite de 10 colonnes (0 à 9).

Donc la question est réglée... 10 max !!! sinon soluce Vériland (ou alors on fais "Deux ListBox3" dans mon programme.... Alimentées par une array dynamique mais franchement j'ai pas envie de me prendre plus de temps sur un "Just For The Fun")

Pour le bug de Vériland, héhéhé j'ai pas eu le temps d'essayer de draguer une boite vide...... Déjà j'arrive pas à draguer en temps normal dans une boite pleine, alors dans une boite vide j'aurai encore moins de chance de ramener une petite à la zon !! (non non Zon on parle pas de toi mais de maison!!)

Bonne Nuit


@+Thierry
Take it Easy Just For The Fun​
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…