Multiple condition sur une ligne (de l'ensemble d'un tableau complex)

laurent950

XLDnaute Accro
Bonjour le forum

J’ai joint un fichier .xls avec les conditions a respecter pour faire des testes sur un tableaux, j’ai fais des boucles, if , elseif, est select case, mais je tourne en boucle est je n’arrive pas m’en sortir.

Explication : "C1" et "C2"

En colonne "C1" et en "C2" = C'est champs sont remplis par du texte (Donnant divers renseignement) ce n'est pas
En corrélation avec la condition du tableaux, mais comme la Colonne "C1" doit forcément être remplis (sens vides entre les lignes) que je doit remplir et ceci pour toutes les lignes qui correspondent aux information de ce tableau, qui est aussi remplis par mais soins donc pour connaître la dernière ligne du tableau cela correspond à la dernière cellule non vide de la Colonne "C1".


Voici la structure :

Titre 1 Titre 2 Titre 3 Titre 4 Titre 5

Donc 5 colonnes dont je vais expliquer les conditions :

La colonne titre 1 sera remplis ou pas remplis (si remplis avec un f)

La colonne Titre 2 sera remplis par des nombres (si remplis par des nombre de 1 à l’infinie pour les possibilités)

Les Colonne Titre 3 ou Titre 4 ou Titre 5 (Ne peuvent pas être remplis seul)
Exemple Titre 3 = 56 ou autre Nombre ici 56 pour exemple
Ou
Titre 4 = 25 ou autre Nombre ici 25 pour exemple
Ou
Titre 5 = 12 ou autre Nombre ici 12 pour exemple

La colonne (Titre 3 et Titre 4) sera remplis par (deux cases si elles doivent être remplis) et ceci par des nombres figurant au moins une fois dans la colonne Titre 2
Exemple : Titre 3 = 56 et Titre 4 = 25 (c’est deux nombres doivent être présent au moin une fois en Titre 2 (soit 56 et 25)

La colonne (Titre 3 et Titre 4 et Titre 5) sera remplis par (Trois cases si elles doivent être remplis) et ceci par des nombres figurant au moins une fois dans la colonne Titre 2
Exemple : Titre 3 = 56 et Titre 4 = 25 et Titre 5 = 12 (c’est Trois nombres doivent être présent au moins une fois en Titre 2 (soit 56 et 25 et 12)

Si les conditions ne sont pas respecté, c’est toute la ligne qui doit être colorié en font Rouge.

Chacune des lignes de se tableaux doit être passé en revu c'est-à-dire une ligne de 5 colonnes doit répondre a toutes c’est conditions et ainsi de suite jusqu'à la fin du tableau.

Le tableau est fixe sur la largeur (soit 5 colonnes mais variable sur la longueur en fonction du nombre de ligne donc chercher la dernière cellule non vide de la dernière ligne du tableau)

Le tableau doit être traité en boucle, et je ne suis pas sur mais cela peux être devrait être traité en variable tableau mais j’en suis pas sur.

Si quelqu’un a une idée de la structure de cette condition.

Ps : je dispose aussi d'excel 2007 si vous avez la solution, il a un début de code, j'ai fais la fonction du test si la cellule est non vide cela donne 1 et si elle est vide O

je sais pas comment faire pour faire les testes en masse et scindé les information dans la mémoir pour les réutiliser par la suite.

Merci d'avance Laurent
 

Pièces jointes

  • teste condition multicritéres.xls
    34 KB · Affichages: 45
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Multiple condition sur une ligne (de l'ensemble d'un tableau complex)

Bonjour Laurent,

Dans un premier temps, j'ai lu ton message ... et me suis empressé de le refermer.
Je me suis dit, ensuite, qu'en ouvrant la pièce jointe, ce serait peut-être plus clair :eek:
Je jure sur la tête de mon vieux chien (qui est mort) que j'ai relu tes explications à cinq reprises (voire plus, pour certaines) pour essayer de comprendre ... et j'en suis presque toujours au même stade maintenant!

Je vois mal comment tu pourrais solutionner ton problème si tu ne peux l'énoncer clairement. Si tu ne peux pas l'énoncer clairement, comment celui qui lit tes explications pourrait-il s'y retrouver?

Peux-tu lire ce qui suit et me dire si c'est conforme à ce que tu voudrais réaliser:
Pour une ligne donnée:

La colonne C ne peut contenir que la lettre 'f' ou être vide. Si 'f' figure en colonne C, le reste de la ligne doit être vide.
La colonne D ne peut contenir qu'un nombre. Si un nombre figure en colonne D, le reste de la ligne doit être vide.
Si C et D sont vides, les colonnes E, F et G doivent contenir au moins deux valeurs. Chaque valeur devant alors être présente une fois au moins en colonne D.
 

laurent950

XLDnaute Accro
Re : Multiple condition sur une ligne (de l'ensemble d'un tableau complex)

Bonjour Modeste et merci pour le temps que tu m'accordes.

Pour te répondre c'est bien cella, tu as bien compris :

Pour une ligne donnée de (C à G):

1. La colonne C ne peut contenir que la lettre 'f' ou être vide. Si 'f' figure en colonne C, le reste de la ligne doit être vide = Vrais

2. La colonne D ne peut contenir qu'un nombre. Si un nombre figure en colonne D, le reste de la ligne doit être vide = Vrais

3. Si C et D sont vides, les colonnes E, F et G doivent contenir au moins deux valeurs. Chaque valeur devant alors être présente une fois au moins en colonne D = vrais

C'est parfaitement cela, je n'arrive pas a trouver l'algorithme qui me permet de construire cette condition.

Si vous avez une solution cela serais vraiment super.

Laurent
 

Modeste

XLDnaute Barbatruc
Re : Multiple condition sur une ligne (de l'ensemble d'un tableau complex)

Bonsoir,

Je précise (à toutes fins utiles) que je ne me porte pas candidat pour la traduction de tes futures demandes :rolleyes: L'idéal serait, bien évidemment, que tu arrives à une formulation la plus claire possible.

Ci-joint, une proposition à tester, re-tester et re-tester encore (il me semble que les différents cas de figure sont prévus, mais c'est à vérifier!). Il y a, par ailleurs, peut-être moyen de coder autrement, mais c'est ce qui est sorti spontanément ;)
 

Pièces jointes

  • Conditions Laurent950.xls
    30.5 KB · Affichages: 54

laurent950

XLDnaute Accro
Re : Multiple condition sur une ligne (de l'ensemble d'un tableau complex)

Bonsoir Modeste,

Je ne sais pas quoi dire, si j’aimerais avoir votre spontanéité, sur ce genre de difficulté car j’y est passé beaucoup de temps, et vous avez compris ce que j’ai eu du mal à expliquer mais aussi à résoudre cela avec une telle rapidité.

J’aimerais apprendre comme vous a résoudre des cas très complexe, et j’ai une très bonne connaissance du code dans ces généralité, car j’y passe énormément de temps à lire est apprendre les fonctionnalités, mais dans les livres tous est parfois pas très claire dans le sens ou lorsque l’on veut s’attaquer a des structures de se type, toutes les informations sont bien donner est expliquer, mais il n’y a pas vraiment le mode d’emplois pour l’assemblage à la réalisation d’une telle tache.

Je pense que cela n’est pas donner a tous le monde vu le nombre de personne ayant lu se poste et qui a su répondre, 75 lecture pour une réponse la votre (en 1 jours), encore merci du temps passé.

Je vais me servir de cette macro qui est une des parties intégrante de mon travail au quotidien et je vais m’en servir pour mes vérifications. Et aussi la décortiquer pour apprendre a refaire se genre de procédure.

Peut être une question = Y a-t-il une limite avec se genre de structure conditionnel (If , Elseif, For) ou Non

Je me suis aussi penché sur les variables tableaux (est-ce pour le même genre de situation ou d’autre) parfois je mis perd, il me faudrait des cours je pense

Je tenais à vous répondre, pour votre sympathie d’avoir pris le temps de me lire et aussi réalisé cette macro, je vous remercie.

Au plaisir de vous lire et vous répondre

Laurent


Merci
 

Discussions similaires

Statistiques des forums

Discussions
312 216
Messages
2 086 351
Membres
103 195
dernier inscrit
martel.jg