Message d'erreur sur une combobox

nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010 - 20 août 2007 à 14:12
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 - 28 août 2007 à 02:57
Bonjour tout le monde,
Après de longues vacances paisibles le retour cruel à la dure réalité et déjà les premiers problèmes!!!
J'ai crée une combobox sur une feuille Excel à laquelle j'ai associé un code et lorsque je veux parcourir la liste déroulante un terrible message d'erreur s'affiche :
"Mémoire insuffisante pour afficher en entier"
Et ça plante joliment mon document Excel que je suis obligé de fermer, sympatique non ?
Il ne le fait pas tout le temps et je n'arrive pas à trouver pourquoi il le fait.
Est-ce que quelqu'un aurait une solution s'il vous plait ?

9 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 août 2007 à 14:41
Salut,

Montre nous ton bout de code qui te fais défaut...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010
20 août 2007 à 14:50
Voilà mon code :



Private Sub diagonales_identiques_Change()
   
    Feuille_Active = ActiveSheet.Name
    Sheets(Feuille_Active).Range("o31").Value = diagonales_identiques.Value
    Profil = diagonales_identiques.Value
    Sheets(Feuille_Active).Range("u31").Value = ""
   
    If diagonales_identiques.Value <> "" Then
        With Worksheets("Liste des profils").Columns(1)
            Set c = .Find(Profil, LookIn:=xlValues)
            If c Is Nothing Then
                Sheets(Feuille_Active).Range("u31").Value = "Attention, non standard!"
            ElseIf Sheets("Liste des profils").Range(c.Address).Font.ColorIndex = 3 Then
                Sheets(Feuille_Active).Range("u31").Value = "Attention, non standard!"
            Else
                Sheets(Feuille_Active).Range("u31").Value = "Standard!"
            End If
        End With
    End If
   
End Sub




Cependant je ne pense pas que ce soit le code qui fasse défaut enfin c'est vraiment bizarre le message s'affiche à l'instant où je clique sur la combobox alors que normalement la macro s'exécute une fois que j'ai sélectionné et validé un élément de la liste. J'avoue que j'arrive pas bien à comprendre ce qui se passe ou alors c'est mon pc qui lui aussi supporte mal la reprise!!
Je ne sais danc pas si ça provient de vba ou de Excel.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 août 2007 à 15:00
Salut,

Dans ce cas, pourquoi ne pas mettre ta macro, dans ta validation...à tout hasard ?

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010
20 août 2007 à 15:16
Et ben non ça ne marche pas, même sans le code associé ça plante, c'est vraiment que la combobox qui bugg mais pourquoi ?
J'essaierais bien de m'en passer mais là j'ai pas le choix il me faut absolument une combobox
C'est incompréhensible...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 août 2007 à 15:26
Et une Listbox(si cela exite en VBA) ?

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010
20 août 2007 à 17:51
Ben je viens d'essayer avec une listbox et le message d'erreur persiste. Peut être que j'ai mis trop d'informations dedans, il y a environ 600 lignes !!!!!
Mais ce qui est fou c'est que des fois, rien ne se passe et la combobox marche...
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
20 août 2007 à 19:48
Salut,

tu fais bien un Combo.Clear avant ?

<hr />I LIKE TO BE HERE WHEN I CAN
<hr />
0
nanardino64 Messages postés 131 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 17 mars 2010
21 août 2007 à 08:20
Non pas du tout je ne connais pas cette commande... Pour remplir la combo je passe directement par ses propriétés vu que la liste ne change pas et qu'elle se trouve sur une feuille Excel
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
28 août 2007 à 02:57
Et pour ton message de mémoire, faut un minimum déclarer les variables. Sans déclarations, elles sont toutes Variant, donc ça prend un max de place mémoire et c'est 3 à 5 fois plus long à l'exécution.

regarde dans l'aide de vba Dim & Type de données

@++

<hr width="100%" size="2" />(
0
Rejoignez-nous