Est-il possible de recopier des boutons installés dans une feuille dans un userform

Wily

XLDnaute Junior
Bonjour à tous

Je souhaiterais recopier des boutons installés dans une feuille vers un Userform
Visiblement rien n'a été prévu pour cela !
Est-ce qu'avec du code cela pourrait être possible

Merci
 

Wily

XLDnaute Junior
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Bonjour Job75, Bonjour Si., bonjour à tous

Je ne pensais pas recueillir tant de solutions !
Je suis comblé, merci beaucoup
J’essaye d'analyser tout cela
Les FaceID, je ne m’en étais jamais servi ou il y a très longtemps.

Job si je comprends bien tes macros
(Je ne parle pas du code, car les modules de classe, je n’en ai jamais écrit, c’est un peu complexe pour moi !)
Que ce soit les FaceID ou les images, tu ne les intègre pas dans tes boutons, mais tu va les chercher uniquement quand tu active ton UserForm ?, C’est bien cela ?

Cela est plus rapide d’utiliser cette pratique, plutôt que de mettre les photos directement dans les boutons ? Je suis un peu étonné, même si les photos sont de petites tailles, il faut quand même aller les chercher sur le disque dur. Non ?

Bien sur je te fais confiance, en plus en mettant les images directement dans un dossier, c’est plus facile à gérer, pas de dispersion, de perte !

Je m'en vais voir à présent la solution de Si..

A+
 

job75

XLDnaute Barbatruc
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Re Wily,

Oui comme je l'ai dit les images sont chargées temporairement dans l'USF.

Le fichier de l'USF ne contenant plus d'images il sera plus léger.

En terme de rapidité il faudrait tester, c'est peut-être un peu plus long que quand les images sont installées durablement dans l'USF.

Je vais essayer de tester avec mes 4 images.

A+
 

job75

XLDnaute Barbatruc
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Re,

J'ai testé cette macro sans puis avec des images durables :

Code:
Private Sub CommandButton102_Click() 'Ouvrir l'USF avec Images
Dim t, i
Application.ScreenUpdating = False
t = Timer
For i = 1 To 100 'donc simule 400 images
  Initialiser
  AvecFavIcons 'en commentaire avec des images durables
  UserForm1.Caption = "Test avec Images"
  UserForm1.Show 0 'non modal
  Unload UserForm1
Next
MsgBox Timer - t
End Sub
La différence est négligeable : 3,3 secondes puis 3,2 secondes.

A+
 

Wily

XLDnaute Junior
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Re,

Si ..., je viens d'essayer la macro, la 1ère pose évidement problème, avec la seconde c'est parfait
La technique est différente, mais le résultat est aussi parfait.

Job75
Effectivement il n'y a donc pas de différence de rapidité
Bien sûr avec enregistrement sur disque, le temps risque de s'allonger au fil du temps (Fragmentation des images sur le disque) mais une fois les images lues, les autres appels aux images seront plus rapides.
Reste que la gestion des images dans un dossier reste une très bonne stratégie, je l'avais d’ailleurs adopté récemment, car cela facilite leur utilisations pour plusieurs classeurs (Et leurs sauvegardes !), Mais je n'avais pas imaginé cette technique de leurs chargements temporaires.

Est-ce que cette technique pourrait également être utilisée pour des boutons placés directement sur le fichier ?
Je m'explique:
J'ai donc actuellement un fichier avec de nombreux boutons, dont certains avec des images (Sans doute trop lourdes, car à l'époque je ne m'étais pas préoccupé de leurs poids). une fois le classeur chargé, le problème de rapidité devient nulle, Sauf en cas de changement de feuille !, car j'ai le droit à chaque retour sur la feuille principale à un balayage disgracieux et énervant de tous les boutons (y compris ceux qui n'ont pas d'images).
C'est ce phénomène qui me pousse à me tourner vers un UserForm, mais les boutons placés directement ont aussi un grand avantage, celles de pouvoir être cliqué beaucoup plus rapidement si on en fait une utilisation soutenue ...

A+
 

job75

XLDnaute Barbatruc
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Re,

De toute ma vie excelienne je n'ai jamais vu de fichier avec 50 boutons dans une feuille de calcul.

Pour choisir entre 50 macros à exécuter on utilise une liste de validation ou une ComBoBox.

Elles sont faites pour ça.

A+
 

Wily

XLDnaute Junior
Re : Est-il possible de recopier des boutons installés dans une feuille dans un userf

Bonjour Job75

Je comprends l'étonnement!
Moi même je n'ai qu'un seul et unique fichier avec tant de boutons
Cependant c'est avant tout un fichier de saisie, et les macros facilitent les nombreuses rentrées
Ces boutons sont nombreux, mais disposés très méthodiquement
Et leurs utilisations est malgré ce que l'on peut pensé très aisées
Et surtout très rapides !

Si je n'étais pas confronté au problème d'affichage, je ne changerais rien, d'où mon dernier post.

L'utilisation d'une ComboBox me ferait perdre beaucoup de rapidité
Je préfère encore un simple UserForm
Mais tes différentes solutions ont bien répondues à mon besoin.

Merci
A+
 

Discussions similaires

Réponses
0
Affichages
235

Statistiques des forums

Discussions
312 321
Messages
2 087 265
Membres
103 501
dernier inscrit
talebafia