Barre déroulante pour faire défiler le texte ds une cellule

gdcobra91

XLDnaute Junior
Bonjour,

Est-il possible d'utiliser la barre déroulante pour faire défiler le texte présent dans une cellule? Et quelle est la méthode?

J'ai testé la barre de défilement de la barre d'outil Formulaire, mais cette dernière permet simplement d'augmenter ou de diminuer une valeur d'une cellule.

Pouvez-vous m'aider.

Merci.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

On peut faire défiler un champ dans une zone de liste


JB
 

Pièces jointes

  • Classeur1.xls
    21 KB · Affichages: 846
  • Classeur1.xls
    21 KB · Affichages: 889
  • Classeur1.xls
    21 KB · Affichages: 915

gdcobra91

XLDnaute Junior
Re : Barre déroulante pour faire défiler le texte ds une cellule

Merci pour votre réponse. En réalité, je cherchais la possibilité d'améliorer la lisibilité au texte présent dans la cellule. J'avais pensé pour cela à un ascenseur sur le côté tout en gardant la possibilité de modifier le texte à l'intérieur de la cellule (et directement dans la cellule).

Avez vous une idée?

1 PJ

Merci par avance.
 

Pièces jointes

  • Excel_ascenseur.xls
    13.5 KB · Affichages: 517

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

Voir PJ

JB
 

Pièces jointes

  • Loupe5.xls
    36 KB · Affichages: 804
  • Loupe5.xls
    36 KB · Affichages: 816
  • Loupe5.xls
    36 KB · Affichages: 837
Dernière édition:

yannick91

XLDnaute Nouveau
Re : Barre déroulante pour faire défiler le texte ds une cellule

Merci bcp! Ta solution me convient! Par contre, le seul pb, lorsque je double-clic par erreur sur une cellule comportant une formule ou sur une cellule (format= heure) alors la cellule est ds le 1er cas égale à la valeur et non plus à la formule et ds le 2e cas, égale à une valeur numérique de l'heure?!

Comment peut-on restreindre l'affichage du formulaire à certains colonne et non à toute? Ou peut-on empêcher le changement de la valeur d'une cellule comportant une formule ou une heure et laisser la possibilité de modifier les autres cellules?

Merci.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

Solution 1:

Quand on double clic sur une cellule vide, on annule l'événement

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target <> "" Then
       UserForm1.TextBox1 = Target
       UserForm1.Show
    End If
    Cancel = True
End Sub

Solution2:

On limite aux colonnes 1 à 3

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
   If Target.Column >= 1 And Target.Column <= 3 Then
    If Target <> "" Then
       UserForm1.TextBox1 = Target
       UserForm1.Show
    End If
    Cancel = True
   End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  On Error Resume Next
  UserForm1.Hide
End Sub

JB
 

Pièces jointes

  • Loupe5.xls
    36.5 KB · Affichages: 395
  • Loupe5.xls
    36.5 KB · Affichages: 401
  • Loupe5.xls
    36.5 KB · Affichages: 370
Dernière édition:

gdcobra91

XLDnaute Junior
Re : Barre déroulante pour faire défiler le texte ds une cellule

Un gd merci !!! J'ai choisi la 2e méthode pour info, elle répond parfaitement à ce que je voulais faire.

Encore merci pour ton aide.

Ps: Si tu as le temps, j'ai 2 autres sujets en cours sur le forum. Tu auras peut-être une solution ;-)
 

gdcobra91

XLDnaute Junior
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

Je suis parvenu ds les options de la form UserForm1, à modifier l'emplacement de cette forme lors de son affichage mais je ne parviens pas à régler sa taille lors de son affichage et de pouvoir modifier sa taille après son affichage (par l'utilisateur).

Comment dois-je faire?

Merci.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

Double-clic sur le formulaire pour augmenter sa taille:

Private Sub UserForm_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Me.Zoom = Me.Zoom * 1.05
Me.Width = Me.Width * 1.05
Me.Height = Me.Height * 1.05
End Sub

JB
 

Pièces jointes

  • EditeurCellule.xls
    36 KB · Affichages: 298
  • EditeurCellule.xls
    36 KB · Affichages: 299
  • EditeurCellule.xls
    36 KB · Affichages: 309

gdcobra91

XLDnaute Junior
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

Si j'ai bien compris la solution que tu me propose est de zoomer le texte donc la fenêtre est plus grande. De plus, il n'est plus possible de modifier le texte à l'intérieur du formulaire (dès que l'on clique sur la croix rouge pour fermer, l'ancien texte reste présent).

Lorsque je double-clique sur la cellule, je voulais obtenir un formulaire 2 fois plus grand tout en laissant la possibilité de modifier le texte à l'intérieur du formulaire. De plus, est-il possible de régler la taille du formulaire lorsqu'il est actif (en tirant sur les bords du formulaire).

Merci.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

J'avais supprimé par erreur une partie de code du formulaire.
Pour agrandir le formulaire avec la souris, je ne sais pas si cela est possible. Post une nouvelle demande.

JB
 

Pièces jointes

  • EditeurCellule.xls
    40 KB · Affichages: 242
  • EditeurCellule.xls
    40 KB · Affichages: 250
  • EditeurCellule.xls
    40 KB · Affichages: 224

gdcobra91

XLDnaute Junior
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,

Je ne parviens à comprendre comment avec ta nouvelle solution, augmenter ou diminuer la taille du formulaire UserForm (taille du champ TEXTE).

J'ai essayé:

Me.Zoom = Me.Zoom * 1
Me.Width = Me.Width * 1
Me.Height = Me.Height * 1

Me.Zoom = Me.Zoom * 200
Me.Width = Me.Width * 200
Me.Height = Me.Height * 200

Et j'obtiens toujours la même taille du formulaire?!!! Je ne comprends pas pourquoi?!

Pouvez-vous m'expliquer?

Merci.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Barre déroulante pour faire défiler le texte ds une cellule

Bonjour,


Voir PJ

Code:
Private Sub TextBox1_Change()
   ActiveCell = Replace(Me.TextBox1, Chr(13), "")
End Sub

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
  If UserForm1.Zoom = 100 Then
    UserForm1.Zoom = 200
    UserForm1.Width = Me.Width * 2
    UserForm1.Height = Me.Height * 2
  Else
    UserForm1.Zoom = 100
    UserForm1.Width = Me.Width / 2
    UserForm1.Height = Me.Height / 2
  End If

  Cancel = True
End Sub

Private Sub UserForm_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
  If Me.Zoom = 100 Then
    Me.Zoom = 200
    Me.Width = Me.Width * 2
    Me.Height = Me.Height * 2
  Else
    Me.Zoom = 100
    Me.Width = Me.Width / 2
    Me.Height = Me.Height / 2
  End If
End Sub

JB
 

Pièces jointes

  • UserForm(1).xls
    41 KB · Affichages: 325
  • UserForm(1).xls
    41 KB · Affichages: 348
  • UserForm(1).xls
    41 KB · Affichages: 391

Discussions similaires

Statistiques des forums

Discussions
312 204
Messages
2 086 198
Membres
103 153
dernier inscrit
SamirN