LOUPE (grossissement sur un menu deroulant) [Résolu]

BLACKHAYES

XLDnaute Impliqué
Bonjour le forum, a tous,

j'aimerais si il est possible ou si il existe un code vba, qui grossirait ma liste de menu deroulant d'une seule cellule quand on clique dessus pour selectionner.

car comme ayant un grand tableau qui depasse largement mon ecran et que je dois reduire a 60% pour tout avoir a l'ecran, ce qui ne pose pas de probleme jusque la, mais quand je dois selectionner dans ma liste de menu deroulant, cette liste est ecrit trop petit, et je dois a chaque fois augmenter le pourcentage, puis revenir a 60%.
c'est enervant,
donc si il existe une possiblité de creer un code vba pour pour ce cas.
Ma cellule a grossir est en "G3";

merci d'avance
cordialement
 
Dernière édition:

BLACKHAYES

XLDnaute Impliqué
Re : LOUPE (grossissement sur un menu deroulant)

Re Caillou,
ca y est grace a vous ca fonctionne exactement comme je le voulais.

vraiment un grand merci a vous, car mes demandes n'etaient pas simple, et pas toujours completes.
Grand MERCI A VOUS

BRAVO
vous etes tous geniaux
TRES CORDIALEMENT
 

PMO2

XLDnaute Accro
Re : LOUPE (grossissement sur un menu deroulant) [Résolu]

Bonjour,

J'ai repris l'idée de Caillou.
Ma démarche évite de se préoccuper des cellules fusionnées. Je me contente de tester si la cellule sélectionnée comporte une validation avec liste.

1) Copiez le code suivant dans la fenêtre de code de la feuille concernée
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call ZoomDropdown
End Sub

2) Copiez le code suivant dans un module Standard
Code:
Const COEFF_LOUPE As Long = 200 'à adapter
Dim OldZoom&

Sub ZoomDropdown()
Dim VL As Validation
Dim rep
'--- Si c'est une liste de validation ---
Set VL = ActiveCell.Validation
On Error Resume Next
rep = VL.InCellDropdown
  '°°° Sinon rétablit le zoom initial et sort °°°
If Err <> 0 Then
  ActiveWindow.Zoom = OldZoom&
  Exit Sub
End If
  '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
On Error GoTo 0
'--- Zoome la fenêtre ---
If ActiveWindow.Zoom < COEFF_LOUPE Then OldZoom& = ActiveWindow.Zoom
If OldZoom& < COEFF_LOUPE Then ActiveWindow.Zoom = COEFF_LOUPE
End Sub

Cela fonctionne dans mon exemple.
Qu'en sera-t-il chez vous (en situation) ?
 

Pièces jointes

  • Effet de loupe sur une Validation avec liste.xlsm
    17.2 KB · Affichages: 37
Dernière édition:

Si...

XLDnaute Barbatruc
Re : LOUPE (grossissement sur un menu deroulant) [Résolu]

salut

autre façon : nommer les différentes plages concernées pour 2 macros lègères.
VB:
Private Sub Worksheet_SelectionChange(ByVal R As Range)
  Dim P As Range
  Set P = Union([ç1], [ç2], [ç3], [ç4], [ç5])
  ActiveWindow.Zoom = IIf(Intersect(R, P) Is Nothing, 60, 200)
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
  ActiveWindow.Zoom = 60
End Sub
La seconde n'est utile, ici, que pour les listes de validation.
 

Pièces jointes

  • Zoom cellule de plage.xlsm
    50.5 KB · Affichages: 41

Discussions similaires

Statistiques des forums

Discussions
312 576
Messages
2 089 855
Membres
104 290
dernier inscrit
Beloumi3