IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème de ScrollBar


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2007
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 153
    Par défaut Problème de ScrollBar
    Bonjour à tous.

    Je vous explique rapidement mon problème.
    Voilà j'ai un tableau à 2 colonnes. Dans la première se trouve des boutons et dans l'autre des valeurs.
    Lorsque je clique sur un bouton, cela renvoie la valeur associée dans un textbox.
    Jusque là tout va bien.
    J'ai ensuite rajouté une ScrollBar qui me permet d'ajuster cette valeur.
    Mon problème se situe au niveau de l'initialisation de la ScrollBar, je n'arrive pas à lui faire prendre la valeur du TextBox que j'ai choisi en cliquant sur un bouton.

    Je vous remercie pour votre aide.

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Où se trouve "tout ça" ? Dans un userform ou dans une feuille de calculs ?
    Où places-tu ta ScrollBar ? Sur quoi agit-elle ?
    A+

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2007
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 153
    Par défaut
    Oui tout ça se trouve dans un userform.
    Et donc elle agit sur le textbox qui se trouve également dans le userform.

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Ta scrollbar est indépendante de la TextBox ? Je ne comprends pas. Si tu valides la propriété ScrollBars de la textbox, tu as une scrollbar qui s'ajoute à la textbox et qui lui est liée... Que veux-tu de plus ?

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2007
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 153
    Par défaut
    Alors pour être un peu plus claire:
    - J'appuie sur mon bouton
    - J'ai par exemple la valeur 1,5 qui s'affiche dans ma textbox
    - En dessous de cette textbox j'ai une scrollbar avec laquelle je veux faire
    varier cette valeur pour l'ajuster à 1,55 par exemple.

    Es ce que c'est plus claire comme ca?

    Et pour être encore plus claire, mon problème c'est que je veux ajuster cette valeur, la scrollbar ne prend pas en compte la valeur mais elle commence à partir du min.

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Pour faire ça, le scrollbar pose un pb.
    Remplace ta scrollbar par une toupie.
    Je suppose par exemple, que tu veux faire varier la valeur de 1/100 par clic.
    Pour chaque clic droite, tu fais Textbox1 = Textbox1 + 0.01 et inversement avec chaque clic de gauche.
    Connais-tu les valeurs min et max à obtenir ?
    Avec un scrollBar tu dois déjà fixer un max adapté à la valeur moyenne de la textbox. Ensuite, une simple règle de trois...

    Tu peux toujours tester ça...
    Dans la feuille de code de l'userform :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Dim Unite As Double, ValDep As Double, OldVal As Double
     
    Private Sub ScrollBar1_Change()
    Dim Result As Double, Deplacement As Double
        Deplacement = ScrollBar1.Value - OldVal
        Result = ValDep + (Deplacement * Unite)
        TextBox1 = Result
    End Sub
     
    Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
        ValDep = Val(TextBox1)
        Unite = Val(TextBox1) / ScrollBar1.Max
    End Sub
     
    Private Sub UserForm_Activate()
    ScrollBar1.Max = 10000
    ScrollBar1.Value = ScrollBar1.Max / 2
    OldVal = ScrollBar1.Value
    End Sub
    A adapter... Le max de ton ScrollBar doit être proportionnel à la valeur en sortie de ton textbox.
    Le pb : Si tu modifies le max dans TextBox1_Exit, les calculs se feront deux fois : Une fois quand le max sera fixé par calcul et une fois puisque sa valeur aura changé.
    Il faut donc fixer le max de la scrollbar une seule fois à l'affichage de l'userform et pour ça avoir une idée de la valeur moyenne de ta textbox AVANT d'avoir à modifier cette valeur.
    Si tu as compris, alors c'est que j'ai bien parlé Mais je ne suis pas sûr d'avoir été très clair sur ce coup-ci
    Bon courage

Discussions similaires

  1. problème de scrollbar inactive
    Par sissi25 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 22/09/2007, 14h24
  2. [XHTML] Doctype XHTML et problème de scrollbar
    Par darwin22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 09/03/2007, 14h23
  3. [C#][datagrid] problème de scrollbar
    Par d1g-2-d1g dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/05/2006, 16h26
  4. Problème de Scrollbar
    Par JeanECN dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 22/03/2006, 23h07
  5. Adaptation d'un code TMemo vers TRichEdit : problème de ScrollBars
    Par Droïde Système7 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 21/01/2005, 15h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo