formule sans doublon particuliere

  • Initiateur de la discussion Initiateur de la discussion GHISLAIN
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GHISLAIN

XLDnaute Impliqué
bonjour le forum,

je cherche a recuperer
les données de G5 a G35 sans vide ni doublon
le resutat attendu sera mit de G38 A G42

dans la colonne g5 a g35 je n aurais jamais plus de 3 selections differentes mais pourront etre en doublon

contrainte
la formule doit rester volatile puisque cette colonne n'aura jamais la meme position et sera copiée
dans differente feuille
cette colonne changera de position lors d'insertion de nouvelle colonne, je ne peux donc utiliser des plages ni de nom qui définissent la colonne

merci a tous de votre aide et suggestion

cordialement Ghislain
 

Pièces jointes

Re : formule sans doublon particuliere

Bonjour.
La solution avec ma fonction Récap.
Remarque: elle peut aussi restituer en même temps plein de choses à partir d'autres colonnes, voir module MRécapituler.
Si vous ne souhaitiez pas en avoir la programmation dans votre classeur, j'en ai un autre à vocation de macro complémentaire.
À +
 

Pièces jointes

Re : formule sans doublon particuliere

Bonjour Dranreb,

je viens d'essayer d inclure ta proposition de OUF , qui fonctionne superbemeent bien sur l exemple mais que je ne parviens pas a inclure dans mon fichier final

j ai l erreur type non défini par l'utilisateur a cette ligne , Liste As Dictionary dans le module MRécapituler dans le Private Sub CalculerRécap(ByVal Argument As Range, ByVal Charges As Variant, ByVal LRéservées As Long)

je ne v ois pas d ou viens l erreur , si tu peux m aider a corriger ou me proposer une formule plus adapter a mes competences parceque la j avoue c est largment hors de ma porté

tres cordialement

ghislain
 
Re : formule sans doublon particuliere

re ,

apparemment il fallait cocher , microsoft scripting runtime dans visual outil références , la ça fonctionne

le souci , c est un fichier qui devra aller sur d autre pc , qui n'auront surement pas cette fonction d activée

il y a t il une macro pour l activer sur tout pc utilisant cette application ??

si non , une formule serait plus adaptée a mon cas

merci encore
 
Re : formule sans doublon particuliere

Oui. Je n'aime pas du tout parce que c'est idiot de dégrader une programmation rien qu'à cause de ça, mais c'est possible.
il suffirait de remplacer les "Dictionary" par "Object" et les "New Dictionary" par "CreateObject("Scripting.Dictionary")
À +
 
Re : formule sans doublon particuliere

Bonjour GHISLAIN,
Bonjour Dranreb,
une solution par Formule matricielle
en H49 :
Code:
=INDEX(Plage;EQUIV(MIN(SI((NB.SI(H$48:H48;Plage)=0)*(Plage<>"");NB.SI(Plage;"<="&Plage)));NB.SI(Plage;"<="&Plage);0))&""
@ valider par Ctrl+Maj+Entree
@ Tirer vers le bas
Avec Plage ==> =colonne!$G$5:$G$35
Voir PJ
Amicalement
 

Pièces jointes

Dernière édition:
Re : formule sans doublon particuliere

Re et bonjour Rachid_0661 , (Pro de la formule)

je vous remercie tout deux pour votre aide et collaboration

j opte pour la solution de Rachid pour ça formule que je suis parvenu a adapter a mon projet de la façon suivante

=INDEX(G$5:G$35;EQUIV(MIN(SI((NB.SI(G$37:G37;G$5:G$35)=0)*(G$5:G$35<>"")*(NB.SI(G$5:G$35;"<="&G$5:G$35));NB.SI(G$5:G$35;"<="&G$5:G$35)));NB.SI(G$5:G$35;"<="&G$5:G$35);0))&""

j ai supprimé les $ et remplacé plage par G$5:G$35 pour que la formule reste volatile et s'adapte n importe ou dans le classeur , (changement de place de la colonne ,copié collé la colonne dans une autre feuille etc....)

je garde sous le coude la macro exeptionnelle de Dranreb aui reste extra dans ça conception et rapidité d execution

je vous remercie a tout deux de votre aide

cordialement

ghislain
 
Re : formule sans doublon particuliere

Bonjour Ghislain,
tu peux simplifier encore comme ça,
Code:
=INDEX(Plage;EQUIV(MIN(SI((NB.SI(H$48:H48;Plage)=0)*(Plage<>"");NB.SI(Plage;"<="&Plage)));NB.SI(Plage;"<="&Plage);0))&""
Amicalement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour