L'indice n’appartiens pas a la sélection

Bonjour

Dans mon code VBA quand je mets Range("a1:j" & Lg), çà fonctionne, mais quand je mets Range("a1:r" & Lg) ou + j'ai L'indice n’appartiens pas a la sélection.ou ce trouve l'erreur?

Merci beaucoup

Sub ColorDoublon()

Dim Lg%, Dico As Object, Plg As Range, c

Lg = Range("A65536").End(xlUp).Row

Set Dico = CreateObject("Scripting.Dictionary")

Set Plg = Range("a1:j" & Lg) 'à adapter

Plg.Interior.ColorIndex = xlNone

For Each c In Plg

If c <> "" Then Dico.Item(c.Value) = Dico.Item(c.Value) + 1

Next c

For Each c In Plg

If Dico.Item(c.Value) > 1 Then

c.Interior.ColorIndex = Application.Match(c.Value, Dico.keys, 0) + 2

End If

Next c

End Sub


RE:

J'ai oubliai de mettre a1:j600 et a1 r600

Bonjour,

Voici le fichier

7classeur1.7z (71.75 Ko)

Re,

Je n'ai pas le moyen pour l'ouvrir. Merci de joindre le fichier Excel. Une partie essentielle problématique nous suffit pour comprendre.

Le fichier s'ouvre avec 7-zip a télécharger gratuitement.

ou Winzip, ou Winrar .

Cordialement

OK. Attends un peu jusqu'à ce quelqu'un puisse te dépanner.

Un grand Merci

Re,

L'erreur vient de la propriété

ColorIndex

qui dépasse 56 qui est le numéro maxi quand tu bornes jusqu'à la colonne R.

NB: Chez-moi, je peux lire le fichier zippé.

Alors que ce que je peut faire pour modifier la macro?

Bonjour,

Il y a pusieurs problèmes qui apparaissent :

- Tu as deux types de colonnes, et seules les colonnes paires justifient ta recherche, il conviendrait donc de ne constituer le dico que sur les colonnes qui le justifient (une sur deux) !

- D'autre part, dans la mesure où tu dimensionnes ta plage, je ne vois pourquoi il faudrait ensuite la restreindre ! Donc il faut définir Plg par A1:Z & Lg !! (étant entendu que tu ne t'occupes que des colonnes paires.

- Il est bien évident aussi que dans ton dico, un bon nombre d'éléments contiendront la valeur 1, et vu la taille de ta plage, le nombre en dépassera nécessairement le nombre de couleurs de la palette ! Il conviendrait donc d'épurer le dico en éliminant tous les éléments de valeur 1, afin qu'il ne te reste que ceux qui recensent des doublons.

(Eventuellement en vérifier le nombre résiduel pour s'assurer que l'on ne dépasse pas la taille de la palette, ou bien assurer qu'on rentre dans la palette dans tous les cas en utilisant Mod, ce qui créerait des couleurs doublées pour des doublons différents si on excède les possibilités de la palette, mais ce ne devrait pas être le cas, et pour faire autrement il faudrait changer complètement de méthode...)

- Là on peut alors prévoir que Match sera la plupart du temps en erreur (pour tous les éléments dico que l'on aura éliminé). Erreur à gérer donc (On Error Resume Next). Il faut donc dissocier le renvoi de Match de l'affectation de couleur : si pas d'erreur on affecte couleur (on aura à ce moment une valeur renvoyée par Match), si erreur, on vide l'erreur pour continuer la boucle.

Cela te fait pas mal d'ajustements à faire !

Cordialement.

edit : 2 petites choses que j'oubliais ! D'une part, il ne faut pas dimensionner sur la colonne A, mais sur la colonne B...

D'autre part je conseille de placer la macro dans un module Standard, elle n'as rien à faire dans un module de feuille !

OK Merci beaucoup

Bon courage !

A l'occasion pense à réduire le poids de ton fichier... ! Pas de difficulté pour ramener son poids à moins de 35 ko !!! Tu aurais ainsi pu le déposer directement sur le Forum.

Cordialement.

Ok merci

Je vais essayer de trouver une autre solution

Cordialement

Bonjour,

Ton état d'ésprit manifestement défaitiste qui transparaît dans tes deux derniers posts me surprend et me confond !

MFerrand a écrit :

Bonjour,

Ton état d'ésprit manifestement défaitiste qui transparaît dans tes deux derniers posts me surprend et me confond !

Salut Patrick !

Je résume la situation :

  • Notre ami demandeur pose d'abord son problème en citant son code (en passant hors balises Code et non indenté...).
  • Un fichier est demandé, par Raja, et il répond assez rapidement avec un fichier compressé au format 7z !

-Un fichier zip, c'est banalisé, il est décompressé sur n'importe quelle machine. Quand on met rar ou 7z, ce n'est déjà plus le cas...

On peut déjà considérer que l'intéressé ne met pas toutes les chances de son côté pour obtenir une réponse.

-Effectivement, Raja lui fait remarquer qu'il n'est pas en mesure de l'ouvrir. Il obtient comme réponse que cela peut être ouvert avec 7-zip à télécharger gratuitement. Si Raja ne s'en est apparemment pas offusqué, je dois avouer que cela m'a quelque peu indisposé ! (Et je n'ai pas ouvert le fichier...)

-Raja ayant finalement ouvert le fichier chez lui, répond ultérieurement, en fournissant l'explication du blocage. Sur quoi l'intéressé demande ce qu'il doit faire.

-Les choses en étaient là, et comme elles ne bougeaient pas, j'ai laissé cours à la curiosité d'aller voir ce qu'il en était et d'ouvrir le fichier. La compression était justifiée par le poids du fichier, j'ai donc regardé plus avant (encore que j'aurais dû vérifier si la compression zip se serait avérée suffisante pour passer le fichier sur le Forum...).

Pour résoudre le problème de dépassement d'indice de la palette, il y avait plusieurs aspects à modifier que j'ai entrepris de lister, j'ai fait les corrections (juste ce qui était indispensable, réservant le reste pour plus tard) pour tester.

Et j'ai fourni alors une réponse, sans joindre de fichier, à la fois parce que je n'avais pas repris le code en entier, et parce que je ne l'avais point fait car je trouvais les échanges du début un peu tro cavaliers, et décidait d'attendre la suite après explications littérales.

-Juste un Merci en retour. Je m'en étonne, car les explications, si elles faisaient le tour des aspects à régler ne fournissaient pas pour autant le code, et que si le demandeur poursuivait la question après la réponse de Raja c'est qu'il n'était pas en mesure de faire les corrections lui-même...

Pour en avoir le coeur net, je rajoute une note sur le poids du fichier (que j'avais auparavant fait facilement passer de 3Mo à 34ko...)

Tu as vu la réponse !

Alors je n'étais sans doute pas disposé au départ à apporter une aide... après examen plus détaillé j'infléchis ma position... mais arrivé à ce point, je ne vois pas comment on peut aider quelqu'un qui manifestement ne souhaite pas l'être !

Bonne journée.

Salut Fernand,

je me demande: comment peux - tu encore être étonné ?

Ici , sur le net c'est plus facile de demander comme si c'était naturel que des gens passent des heures sur un problème souvent mal expliqué et ces gens du forum très compétents souvent ,arrivent à décrypter une feuille mal torchée parce que la personne ne connait pas les bases d'une liste de données et même si XL n'est pas fait pour une base de données, c'est souvent comme ça qu'il est utilisé.

On ne peut pas en vouloir aux gens qui débutent mais bien à ceux qui s'entêtent malgré les très bons conseils données par les "king" (dont tu fais partie !) de ce fabuleux forum.

Je me souviendrai toujours de ma première intervention/demande sur un forum américain ou Monsieur Walchenbach lui même m'avait répondu et expliqué comment utiliser un forum (!) et poser les bonnes questions (ce qui n'est pas toujours aisé, j'ai essayé ça plus d'une fois même ici); les questionneurs oublient aussi que eux parfois nagent dans ce bon ou moins bon fichier depuis des mois et les répondeurs eux, le découvrent...

J'avoue que je referme souvent des fichiers parce que mal fagotés et trop long à modifier pour en faire un bon fichier exploitable...

Enfin, ma passion reste intacte et inversement proportionnelle à mes connaissance du produit que j'apprécie depuis des années.

J'avoue que je referme souvent des fichiers parce que mal fagotés et trop long à modifier pour en faire un bon fichier exploitable...

Tu n'es certainement pas le seul !

Rechercher des sujets similaires à "indice appartiens pas selection"