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 :

[VBA-E][ComboBox]Erreur 380 Aléatoire ??


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 44
    Par défaut [Résolu][VBA-E][ComboBox]Erreur 380 Aléatoire ??
    Bonjour à tous

    Voici mon problème (mon sujet était déjà pas mal explicite je pense )

    J'ai deux fichiers Excel avec beaucoup de VB/VBA derrière. Dans un cas les macros se déroulent sans accrocs (désolé ), dans le deuxième cas j'ai droit à la fameuse erreur d'exécution 380 ("Impossible de définir la propriété .text", "Valeur de propriété non valide").

    Donc mon problème ne se trouve pas vraiment dans cette erreur car j'ai réussi à la "corriger", mais dans le fait qu'il y'ait un comportement disctinct pour deux macros identiques... et j'aimerais bien savoir pourquoi afin que celà ne puisse pas se reproduire !

    Voici le code en question:

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
     
    Private Sub UserForm_Activate()
        'lecture de la periode
        m_sPeriode = GetPeriod()
        With ComboBoxMonth
            'Sélection de la période en cours
            If HasValue(m_sPeriode) Then
                .text = m_sPeriode [b]<== [u]c'est ici que l'erreur était levée[/u][/b]
            Else
                .ListIndex = 0
            End If
        End With
    End Sub
     
     
    'Initialisation de la fenetre
     
    Private Sub UserForm_Initialize()
        Dim dDate As Date
        Dim sYear As String
        Dim i As Integer
        Dim iFin As Integer
        Dim sItem As String
     
    On Error Resume Next
     
        sYear = Format(Date, "yyyy")
        iFin = CInt(Format(Date, "mm"))
     
        'Remplissage avec un glissement sur une année
        With ComboBoxMonth
     
                For i = iFin To 1 Step -1
                    sItem = NumberToMonth(i) & " " & sYear
                    .AddItem (sItem)
                Next
     
                For i = 12 To (iFin + 1) Step -1
                    sItem = NumberToMonth(i) & " " & CStr(CInt(sYear) - 1)
                    .AddItem (sItem)
                Next
     
        End With
     
    End Sub
    En fait le problème semble venir du fait qu'il faille remplir la combo et initialiser la propriété text dans la même fonction (en l'occurence j'ai mis tout ces traitement dans l'activate et ça passe sans problème dans les deux cas). OR, si c'est vraiment le problème (classique pour les list et combo) pourquoi est-ce que celà fonctionne dans un cas et pas dans l'autre !??

    Je teste évidemment les deux sur ma machine donc hardware et software sont identiques dans les deux cas... voyez vous une anomalie quelconque qui pourrait expliquer ce type de comportement ??

    Merci à vous !

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Juste une question :
    dans :
    Private Sub UserForm_Activate()
    'lecture de la periode
    m_sPeriode = GetPeriod()
    With ComboBoxMonth
    est-ce-que le contrôle ComboBoxMonth est bien dans la Form UserForm qui est activée ? :
    Quelles sont par ailleirs les autres propriétés de ta Combo (particulièrement les propriétés Locked et Enabled) ?

  3. #3
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    Cette erreur peut se produire selon la valeur de la propriété Style de ton combo :
    si tu n'autorises pas la saisie dans ton combo (Style = 2- DropDown List), alors n'essaye pas d'affecter une valeur à la propriété Text, mais utilise plutôt le ListIndex

    Ce que je dis est valable en VB6, je ne sais pas si ça s'applique en VBA, désolé ...
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 44
    Par défaut
    Je pensais bien que c'était quelque chose du style, mais quand j'ai vérifier l'ensemble des propriétés de la combo pour les deux versions... les deux étaient identiques...

    Pour les propriétés enabled et locked j'ai fait les tests en les plaçant juste avant l'instruction et celà n'a rien changé...

    Pour le style c'est effectivement un style 2 il me semble, mais celà ne m'explique pas pourquoi celà marche dans un cas et pas dans l'autre... bref je crois que je viens encore de sombrer dans la quatrième dimension de l'informatique

    Dans tous les cas merci pour votre aide

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 44
    Par défaut
    C'est bon j'ai "corrigé" le problème, je gérais effectivement mal l'affectation de ma valeur, en utilisant le listIndex c'est passé comme une lettre à la poste ! Donc merci à tous pour vos contributions éclairées !

    @+ et encore merci !

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

Discussions similaires

  1. Combobox et listindex : erreur 380
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/02/2008, 11h46
  2. [VBA-E]Combobox et code trop long!! (debutante)
    Par legend dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/03/2006, 14h23
  3. [VBA-E]COMBOBOX, et base de données
    Par legend dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 24/02/2006, 13h22
  4. [VBA-A][débutant] erreur 424
    Par sergoid dans le forum VBA Access
    Réponses: 5
    Dernier message: 07/02/2006, 18h22
  5. [VBA][Débutant][export]erreurs dans mon code?
    Par Christophe93250 dans le forum Access
    Réponses: 4
    Dernier message: 06/01/2006, 19h52

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