-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
J'ai trouvé la cause :
Si len(strListe)=256, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).
ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
J'ai trouvé la cause :
Si len(strListe)=256, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bon sang de bonsoir ca marche !!!
Ce que je pige pas, c'est qu'il y a deux semaine, j'avais
un crash Excel à cause du fait que j'utilisais une adresse
(comme dans cet exemple), et j'ai changé pour y mettre une
strListe...
Et cette semaine, je dois faire l'inverse! !!!!
Donc, ... A la semaine prochaine ;)))
Merci d'avoir pris le temps de chercher...
JM-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bon sang de bonsoir ca marche !!!
Ce que je pige pas, c'est qu'il y a deux semaine, j'avais
un crash Excel à cause du fait que j'utilisais une adresse
(comme dans cet exemple), et j'ai changé pour y mettre une
strListe...
Et cette semaine, je dois faire l'inverse! !!!!
Donc, ... A la semaine prochaine ;)))
Merci d'avoir pris le temps de chercher...
JM
-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).
ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...
-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$H$4:$H$34"
J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!
-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
cellule
excel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bon sang de bonsoir ca marche !!!
Ce que je pige pas, c'est qu'il y a deux semaine, j'avais
un crash Excel à cause du fait que j'utilisais une adresse
(comme dans cet exemple), et j'ai changé pour y mettre une
strListe...
Et cette semaine, je dois faire l'inverse! !!!!
Donc, ... A la semaine prochaine ;)))
Merci d'avoir pris le temps de chercher...
JM-----Message d'origine-----
Re,
Avant de poster ma réponse à ton message, j'ai fait un
test en entrant dans les cellules H4 à H34 la formule
=LIGNE() *10000000
Cela fait en tout273 caractères, ce que tu peux vérifier
ainsi :
=SOMME(NBCAR(H4:H34))
à valider en matricielle.
J'ai ensuite sélectionné une cellule quelconque, déclenché
l'enregistrement auto, et dans Données validation choisi
"Liste". J'ai indiqué la plage et arrêté l'enregistrement.
Voici le code obtenu :
Sub Macro2()
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Aucun problème avec Excel 98 (homologue pour Mac
d'Excel 97).ca plante quand même...
en fait, dans une liste, avec n'importe quelle solution,
on ne peut avoir > 256 cars...-----Message d'origine-----
Bonjour,
La cause probable est que la liste de validation
dans une feuille Excel (indépendamment de VBA)
est limitée à 255 caractères.
Utilise une plage de cellules pour stocker les
données (éventuellement une colonne masquée),
et le problème devrait être résolu.
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="=$H$4:$H$34"J'ai trouvé la cause :
Si len(strListe)%6, ca passe
Sinon, crash violent d'excel !!!!!!!!!!!!!!
Pfff !!!
QUE FAIRE !!!!-----Message d'origine-----
Lorsque je place une liste de 13 éléments dans une
celluleexcel, ca marche, MAIS j'y met 14 éléments, j'ai une
erreur qui me crash Excel violemment !!!
si mon strListe contient (13 éléments, ca passe)
si plus, CA PLANTE
strListe = "Elt 1, Elt 2, ..."
Range("A1:A20").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList,
AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=strListe
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "Liste"
.InputMessage = ""
.ErrorMessage = _
"Veuillez choisir un élément de la liste !"
.ShowInput = True
.ShowError = True
End With
POURQUOI !!!!
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.