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 :

ScrollBar avec des dates


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 46
    Par défaut ScrollBar avec des dates
    Bonsoir,

    J'essaye de faire une ScrollBar sur des dates !
    Mais je n'y arrive pas car si je mets ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       With Sheet1.ScrollBars("Scroll Bar 36")
            .Value =  Range("Start_Date")  
            .Min =    Range("Start_Date")  
            .Max = Range("Start_Date")   + 730
            .SmallChange = 31
            .LargeChange = 180
        End With
    31 correspondant à un small change de 1 mois et 6 mois pour le large
    Range("Start_Date") = 29 Février 2012 (date d'aujourd'hui)

    Mais comme je mets ça j'obtiens l'erreur suivante :
    "Run-tim error ‘1004’
    Application-defined or object defined error"

    Si quelqu'un peut m'aider

    Merci d'avance

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    3 points à vérifier :
    - le nom de la scrollBar me paraît très surprenant car il contient des espaces Sheet1.ScrollBars("Scroll Bar 36").
    - pour accéder à la scrollBar, pourquoi ne pas utiliser son nom d'objet directement (voir le nom donné dans l'explorateur d'objet)
    - dans la définition des propriété de la scrollBar, la valeur devrait être changée après avoir fixer les bornes Min / Max.

    exemple de code pour un barre nommé ScrollBar1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    With ScrollBar1
            .Min = Range("Start_Date")
            .Max = Range("Start_Date") + 730
            .Value = Range("Start_Date")
            .SmallChange = 31
            .LargeChange = 180
     End With
    P.S : tous les mois n'ont pas 31 jours. Du coup il y a un décalage de plusieurs jours après quelques déplacement.

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 46
    Par défaut
    Merci pour ta réponse BlueMonkey mais ça ne fonctionne toujours pas !!

    J'ai une autre ScrollBar dans ma feuille, avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
         With Sheet1.ScrollBars("Scroll Bar 34")
            .Value = Sheet1.Range("Price") 
            .Min = (Sheet1.Range("Price") /1.5) 
            .Max = (Sheet1.Range("Price") * 1.5)                                         
            .SmallChange = 0.005 * Sheet1.Range("Price")
            .LargeChange = 0.01 * Sheet1.Range("Price")
        End With
    et cela fonctionne très bien !!

  4. #4
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 46
    Par défaut
    Bon en fait c bon j'ai réussi !
    Mais tu aurai la solution pour que ça change de 1 mois exactement.

  5. #5
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    On peut imaginer des solutions à partir du gestionnaire d'évènement associé à l'évènement Change de la scrollBar.

    Exemple pour garder toujours le même premier jour que celui de la plage Start_Date, quelque soit le mois :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub ScrollBar1_Change()
        With ScrollBar1
            If Day(.Value) <> Day(Range("Start_Date").Value) Then
                .Value = DateValue(Day(Range("Start_Date").Value) & "/" & Month(.Value) & "/" & Year(.Value))
            End If
        End With
    End Sub

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 46
    Par défaut
    Ok niquel ça fonctionne !!

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] Problème avec des dates !
    Par yaya54 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/03/2006, 13h12
  2. Chart mettre un axe avec des dates
    Par rvzip64 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 07/10/2005, 11h36
  3. [VB.NET] Requete avec des dates dans un DataSet
    Par leSeb dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/10/2005, 14h30
  4. Requetes avec des dates
    Par PrinceMaster77 dans le forum SQL
    Réponses: 1
    Dernier message: 22/11/2004, 17h46
  5. [Requête] Difficile (impossible ?) avec des dates
    Par starch dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/04/2004, 11h26

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