Blocage programme si les cellules ont plus de 255 caractères [Résolu/Fermé]

Signaler
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
-
mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
-
Bonjour,

J’ai un petit problème avec mon programme et suivant les essais que j’ai réalisé ce serait à cause du nombre de caractères qu’il a dans ma BD (en colonne B).

Avec ou sans sauts de ligne dans une cellule s’il y a plus de 255 caractères le programme ne marche plus voir plante !!!!

Message :

Erreur d’exécution ‘13’ :
incompatibilité de type

Arrêt sur la ligne :

If Me.ComboBox2.ListIndex = -1 And IsError(Application.Match(Me.ComboBox2, choix2, 0)) Then 


Si je quitte la macro et change d’onglet pour modifier le BD, le programme plante.

Voici mon fichier : http://www.cjoint.com/c/FBmktrEmDJt

J’ai recherché sur internet et suivant ce que j’ai trouvé, il ne devrait pas y avoir de problème puisque les spécifications et limites relatives aux feuilles de calcul et aux classeurs sont :

a) Nombre maximal de caractères qu'une cellule peut contenir 32 767 caractères donc pas de PB normalement.
b) Largeur des colonnes 255 caractères

Avez-vous une idée sur la cause du problème.
Merci de votre aide.

Cordialement

6 réponses

Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210
Re,

Comme souvent les 255 caracteres sont en cause dans excel97-2003, j'ai repondu un peu vite.
C'est donc la fonction Application.Match qui pose probleme, j'ai donc remplace par une procedure Function Recherche()

http://www.cjoint.com/c/FBmpcrUWgQf
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 83271 internautes nous ont dit merci ce mois-ci

mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7
RE,

Merci d’avoir regardé, mais sou Excel 2003, lors que je double click sur un case de la colonne D dans la saisie pour ajouter une ligne il en ressort une erreur :

Erreur d’exécution ‘-2147417848(80010108)’ :
Erreur Automation
L’objet invoqué s’est déconnecté de ses clients.


Et le code est arrêté sur :

UserForm1.Left = Target.Left + 100 ' position gauche de l'userform

Plus possible d sortir d'Excel autrement que par le gestionnaire des tâches.

Petit complément à 21h33 : ça marche bien 1 fois mais c'est à la deuxième saisi qu'il y a l'erreur. sauf si l'on recommence une saisi sur la même ligne.

Complément à 21h40 : Si l’on sort de la fenêtre d’erreur par FIN au lieu de DEBOGAGE, il est possible de ressaisir des données même dans une autre ligne et ça marche ?

ajout à 21h44: après beaucoup d'essais ça n semble pas toujours répétitif, le programme plante quelque fois.

Cordialement
f894009
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210 > mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019

Bonjour,

UserForm1.Left = Target.Left + 100 ' position gauche de l'userform
J'ai eu cette ligne en erreur une fois et je ne vois pas pourquoi, car ce n'etait pas en colonne D que j'avais doubleclique !!!!!!!

Plus possible d sortir d'Excel autrement Je vais regarder car j'ai un autre fichier qui a ce probleme

Petit complément à 21h33 : Je remplis autant de ligne que je veux !!!
mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7 > f894009
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020

Bonjour,

Merci encore pour ces réponses.

Si c'est Excel 2003 qui est en cause, il n'y a peut-être pas de solution !

Ne faudrait-il pas que j'essai de mette en œuvre une solution comme celle proposée au post 2 ?
ou
Faut-il être patient et attendre la solution pour remédier au problème dans la configuration actuelle du code ?

Cordialement
f894009
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210 > mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019

Re,

Si c'est Excel 2003 qui est en cause Ben, j'ai 2007 et 2013 alors !!
mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7 > f894009
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020

re,

Ok. merci,

Je patiente alors, car moi je suis incapable de pouvoir résoudre seul ce problème

Cordialement
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210
Bonjour,

C'est le nombre de caracteres maxi d'un item d'une combobox (ici combobox2)qui pose probleme, 255 maxi
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7
Bonjour,

Merci pour cette réponse.

Ce qui veut dire qu’il n’y a pas de solution et qu’il faut avoir moins de 255 caractères dans les cellules de la BD ?

J’ai une idée mais je ne suis pas sur de pouvoir la mettre en œuvre.

a) Si j’ajoute une colonne ‘C) dans ma BD : http://www.cjoint.com/c/FBmns3dGlIt

b)Dans l’UserForm lorsque l’on choisi le titre, il faudrait afficher dans la fenêtre en jaune le détail du titre (données de C)

c)A la validation on copie toutes les données et dans la cellule sous le titre on copie le détail du titre (les données de C)

Auriez-vous du temps à me consacrer pour coder cette solution ou une autres peut-être plus simple ou me conseiller ?

Merci pour vos réponses.

Cordialement
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210
Re,

Avant de rajouter une colonne, y a a voir cote programme pour palier a ce probleme

Je regarde la chose

A+
Messages postés
14950
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
20 janvier 2020
1 210
Re,

En y regardant de plus pret, c'est bien le fait d'avoir plus de 255 caracteres qui declanche une erreur, mais ce n'est pas au niveau de la combobox2 car j'ai modifie en affectant une variable avec la selection de la combobox2 et pas d'erreur

Il faut que je fasse des tests car c'est la comparaison

IsError(Application.Match(Me.ComboBox2, choix2, 0))


qui provoque l'erreur
Messages postés
1938
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
16 août 2019
771
Bonjour à tous,

Je viens de charger le xls du post 5, j'ai double-cliqué en colonne D sur la feuille Saisie pour affiché le userform1.
J'ai joué avec les combobox et j'ai validé.
Résultat : pas de plantage.

Quelles manip faites vous pour que ça plante?

je suis sous XL2010

Cordialement
mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7
Bonjour,

a) chargement du fichier post 5
b) ouverture du fichier
c) double clic sur colonne D (sur zone avec déjà des données ou sans données) = erreur d’exécution
d) Si arrêt par débogage pour voir, l’arrêt est sur la ligne « UserForm1.Left = Target.Left + 100 ' position gauche de l'userform » macro dans la feuille 1.
e) Sortie de la macro
f) Double clic sur la colonne D = même pb que d
g) Double clic sur colonne D puis sortie de la macro par fin = plus possible de sortir du programme.

Cordialement
mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019
7 > mijean94
Messages postés
341
Date d'inscription
mercredi 16 décembre 2015
Statut
Membre
Dernière intervention
7 novembre 2019

Bonjour,

J’ai réussi à mettre en œuvre la solution proposée au post2 et ca marche bien.
Donc plus de problèmes.

Cordialement