Userform / list / menu

balinos

XLDnaute Nouveau
Bonjour a tous

Voila je me suis mis a vba il y a quelques temps et la je suis vraiment bloqué…
Je vous explique ce que je veux faire à partir du fichier que j’ai joint.

Alors tout d’abord je souhaiterai que mon userform1 s’affiche a l’ouverture du fichier Excel mais aussi que sa taille s’adapte a la taille de la fenêtre et a la résolution de l’écran pour être toujours plein écran.

Dans ce userform, je souhaiterais que la combolist que j’ai créé me donne accès aux feuilles 1 a 3 mais pas la 4. Et sur chacune des feuilles je voudrais qu’en cliquant une fois sur une cellule défini cela m'affiche le userform1 (le menu).

Pensez vous que c’est réalisable ??

Merci d’avance pour votre aide !!!
 

Pièces jointes

  • Test.xls
    35.5 KB · Affichages: 76
  • Test.xls
    35.5 KB · Affichages: 81
  • Test.xls
    35.5 KB · Affichages: 77

Staple1600

XLDnaute Barbatruc
Re : Userform / list / menu

Bonsoir

Pour le plein écran
Code:
Private Sub UserForm_Initialize()
Me.Height = Application.Height
Me.Width = Application.Width
End Sub

Pour la combobox (plutot que dans Click ;) )
Code:
Private Sub UserForm_Initialize()
Dim sht As Worksheet
For Each sht In ActiveWorkbook.Worksheets
Select Case sht.Index
Case 1, 2, 3
ComboBox1.AddItem sht.Name
End Select
Next sht
End Sub

Pour afficher le menu sur un double clic dans une cellule (D7)
(à copier dans les feuilles 1,2 et 3)
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Row = 7 And Target.Column = 4 Then UserForm1.Show
End Sub
 
Dernière édition:

balinos

XLDnaute Nouveau
Re : Userform / list / menu

Merci beaucoup de ta réponse!!

J'ai appliqué ce que tu m'a donné et cela a résolu la majorité de mes questions.
Mais (et oui il y a un mais!!), il y a deux trois choses que je n'arrive pas a faire..
J'ai joint mon fichier pour que tui puisse voir comment est ma nouvelle macro..

Alors premierement, je souhaiterais savoir si il est possible de changer le double clik par un simple clik pour l'ouverture du userform dans les feuilles 2 et 3.

Je voulais savoir egalement quelle ligne de code il fallait ajouter pour que le userform se lance au demarrage (et surtout ou la mettre!!)

Pour ce qui est du Userform, le plein ecran marche tres bien mais ce n'est pas exactement ce que je veux en fait.. Je vais tenté de l'expliquer clairement: Je voudrai que le userform prenne la taille de la fenetre et s'adapte a celle ci. en effet je voudrai pouvoir voir le menu excel donc ce n'est pas vraiment un plein ecran... de plus je voudrai que le userform soit figé (qu'on ne puisse pas le deplacer ni le fermer). Autre probleme (je sais yen a bcp...) quand le userform se lance en plein ecran, le contenu n'est pas centré (la combobox se retrouve completement en haut a gauche..) ya til quelques choses a faire pr quelle reste au centre??

Voila ca fait pas mal de question!!! Jespere avoir été assez clair dans mes expliquation.. Je vous joint le fichier test2 pour voir a quoi ressemble la nouvelle macro!

Merci bcp par avance!!
 

Pièces jointes

  • Test2.xls
    44.5 KB · Affichages: 66
  • Test2.xls
    44.5 KB · Affichages: 69
  • Test2.xls
    44.5 KB · Affichages: 78

news

XLDnaute Impliqué
Re : Userform / list / menu

Bonjour au fil et à tous du forum,

Alors premierement, je souhaiterais savoir si il est possible de changer le double clik par un simple clik pour l'ouverture du userform dans les feuilles 2 et 3.

si on se déplace avec le curser et on se met p.ex. dans Range C5,
ceci c'est déjà un click, c'est pourqoui on utilise double clik, ou peut-être avec autre expression cela fonctionne avec un clik,

Je voulais savoir egalement quelle ligne de code il fallait ajouter pour que le userform se lance au demarrage (et surtout ou la mettre!!)
s'ouvre quand?, en cliquant sur le boutton de commande ou sur D7,
ou ouverture de l'USF lors de l'ouverture du fichier?

de plus je voudrai que le userform soit figé (qu'on ne puisse pas le deplacer

Private Sub UserForm_Layout()
Application.ScreenUpdating = False
Me.Left = 245 'Définit la position horizontale de l'USF
Me.Top = 205 'Définit la position verticale de l'USF
Application.ScreenUpdating = True
End Sub

Private Sub UserForm_Initialize()
Me.startUpPosition = 2 ' put the userform in center of screan
End Sub

...ni le fermer
se ferme alors comment USF?, sera toujors affiché
pour fermer USF, activer l'expression "Unload Me"

ci-joint fichier "test2" avec quelques modifications faites,
à te voir si c'est bon ou non,

bonne journée encore,
 

Pièces jointes

  • Test2.xls
    38 KB · Affichages: 109
  • Test2.xls
    38 KB · Affichages: 116
  • Test2.xls
    38 KB · Affichages: 113

balinos

XLDnaute Nouveau
Re : Userform / list / menu

Merci bcp pour toutes ces indications!!!!

J'ai une toute derniere question mais je ne sais pas s'il faut spécialement une macro pour faire ca...

Voila en fait je souhaiterai trouver un code ou une manipulation pour que le zoom de la page excel s'adapte en fonction de la resolution et de la taille de la fenetre de telle sorte que la zone d'impression soit toujours visible... Je m'explique.
J'ai fait une liste sur excel a partir de mon pc et forcément quand je met la page en plein ecran, la largeur s'arrete pil poil a ma derniere collonne... mais quand j'ouvre ce fichier sur un autre pc ou sur une television et bien on ne voit plus que les 3/4 de la largeur ce qui est logique (car changement de resolution de l'écran)... Donc je voudrais un code qui m'adapte la largeur de page en fonction de la resolution pour qu'on voit toute la largeur sur n'importe quel support (un zoom en fait...). jespere que j'ai été assez clair......

En tout cas merci pour tous ces bon conseils!!

A++
 

Statistiques des forums

Discussions
312 505
Messages
2 089 103
Membres
104 032
dernier inscrit
akram.job