Colonne extensible

E

Edouard

Guest
Bonsoir le forum

Je cherche à mettre au point la macro située dans la feuille « Niveau » 1 qui a pour but d’élargir la colonne B sur la largeur du plus grand nom de la liste déroulante, d’autoriser la saisie des 2 premiers caractères de cette liste, puis de redonner à la colonne B sa largeur initiale.
La fonction s’exécute mais en plusieurs temps. (Utiliser la touche Tab)
Tout cela est plus clair dans l’exemple ci-joint.

Merci d’avance
 

Pièces jointes

  • Coupe_formation_1_2_3.zip
    12 KB · Affichages: 18
  • Coupe_formation_1_2_3.zip
    12 KB · Affichages: 21
  • Coupe_formation_1_2_3.zip
    12 KB · Affichages: 21
H

Hervé

Guest
bonjour

J'ai pas tout compris lorsque tu dis : d’autoriser la saisie des 2 premiers caractères de cette liste.

Par contre pour ajuster ta colonne automatiqquemant utilise l'évenement change au lieu de selectionchange.

Salut
Hervé
 
C

CHti160

Guest
Salut" Edouard"
bonjour "Hervé"
c'est deux procèdures à mettre dans la partie code de ta feuille Niveau 1
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 And Target.Row > 4 And Target.Row < 155 Then
Columns("B:B").ColumnWidth = 2
End If
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B4:B154")) Is Nothing Then
Columns("B:B").ColumnWidth = 22 'mets la largeur de la colonne B à 22 quand cellule Sélectionnée et comprise entre B4 et B154
Else
Columns("B:B").ColumnWidth = 2'sinon largeur colonne =2
End If
End Sub


A+++
Jean Marie
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 940
Membres
103 989
dernier inscrit
jralonso