Renseigner les valeurs de chaque celules d'une colonne dans l'ordre

ozmzo

XLDnaute Nouveau
Bonjour a tous les XLDiens,

Je vous ecris de nouveau pour avoir un coup de main sur un probleme que je n'arrive pas a regler.

Je suis en train de creer une macro qui envoi les donnees inscrites manuellement par mail a un logiciel.

Grosso Modo, il suffit a l'utilisateur de renseigner les quelques cellules necessaires et la macro cree un mail, en ecrivant les donnees renseignees par l'utilisateur dans un langage comprehensible par le logiciel en question .

Jusque la tout va bien! Mais tout ce complique lorsque certaines cellules ont des specificites.
Le logiciel de destination ne comprends les donnees que si elle sont separees lignes par ligne.

exemple :
A1: donnee saisie "xxx1" ; B1: donnee saisie "xxx1bis"
A2: donnee saisie "xxx2" ; B2: donnee saisie "xxx2bis"
A3: donnee saisie "xxx3" ; B3: donnee saisie "xxx3bis" ; C3: Specificite "xxx3ter"
A4: donnee saisie "xxx4" ; B4: donnee saisie "xxx4bis"
A5: donnee saisie "xxx5" ; B5: donnee saisie "xxx5bis"

La macro transforme dans une nouvelle feuille:
A1: =xxx1+xxx1bis
A2: :xxx2+xxx2bis
A3: :xxx3+xxx3bis
A4: _xxx3ter
A5: :xxx5+xxx5bis

Comme vous pouvez le constater les donnees saisies en A4 et b4 n'ont pas ete prises en compte car la specificite necessite une ligne complete pour etre comprise par le logiciel.

Ce que j'aimerais savoir, c'est s'il existe une formule qui permet de trouver la valeur directement suivante dans une plage de donnee, sans ce soucier du numero de la celule. Une formule qui repere que la valeur en A4 qui est juste apres celle en A3 n'a pas encore ete recopiee et que c'est donc la prochaine.

J'ai reussi a trouver, en bidouillant, comment contrer ce phenomene pour une seule specificite. Mais lorsque le nombre n de specificite augemente je perds n-1 lignes.

J'espere avoir ete assez clair dans mes explications... Dans le cas contraire faites le moi savoir!

Par ailleurs, je vous remercie infiniment d'avance pour votre aide et votre support.

Cordialement,

leo
 

Excel-lent

XLDnaute Barbatruc
Re : Renseigner les valeurs de chaque celules d'une colonne dans l'ordre

Bonsoir et bienvenu sur le forum Ozmzo,

La prochaine fois, pourras-tu :
-> dire le résultat à obtenir
-> joindre un fichier exemple (ainsi le "répondeur" gagne du temps, et il est sûr de ne pas faire un hors sujet)
-> nous montrer le travail déjà effectué (plus rapide de corriger une macro que la créer de toute pièce)

?

Ce serais très sympa. Merci de nous aider à t'aider ;)

Je suis partie du principe que le résultat que tu voulais obtenir était le suivant (ai-je bien compris tes attentes?) :
A1 : xxx1xxx1bis
A2 : xxx2xxx2bis
A3 : xxx3xxx3bisxxx3ter
A4 : xxx4xxx4bis
A5 : xxx5xxx5bis

Si c'est bien ce que tu veux, la macro du fichier ci-joint fera ton bonheur. Macro conçu pour fonctionner quelque soit la feuille active.

Bonne fin de soirée

Cordialement

PS. : bien penser au fichier la prochaine fois.
 

Pièces jointes

  • LaProchaineUnFichierSTP.xls
    25 KB · Affichages: 41

Excel-lent

XLDnaute Barbatruc
Re : Renseigner les valeurs de chaque celules d'une colonne dans l'ordre

Re-bonsoir,

Si le résultat souhaité est :
A1 : xxx1xxx1bis
A2 : xxx2xxx2bis
A3 : xxx3xxx3bis
A4 : xxx3terxxx4
A5 : xxx4bisxxx5
A6 : xxx5bis

Il te reste plus qu'à rajouter une boucle à la macro envoyé.

A bientôt

Cordialement

PS. : sois plus précis la prochaine fois. N'hésite pas à mettre dans ton fichier :
-> résultat obtenu
-> résultat souhaité
Ce sera ainsi plus clair ;)
 

ozmzo

XLDnaute Nouveau
Re : Renseigner les valeurs de chaque celules d'une colonne dans l'ordre

Bonsoir EXCEL-Lent, et merci infiniment pour la reponse.

Desole, je prends bien notes des conseils que j'applique d'ailleurs sur-le-champs!
Ce que je cherch(ais) en realite ce situait entre votre premiere et votre seconde reponse :)

Je reprends votre format :
A1 : xxx1xxx1bis
A2 : xxx2xxx2bis
A3 : xxx3xxx3bis
A4 : xxx3ter
A5 : xxx4xxx4bis
A6 : xxx5xxx5bis

Entre-temps, j'ai bidouille une formule qui me fait ce que je lui demande, mais elle est longue, lourde et complexe (du moins pour mon niveau.. je me suis surpris moi-meme a vrai dire :) ). Etant donne que je ne suis absolument pas familier des macros (celle dans le fichier Excel n'est pas de moi) j'ai fais avec les outils et les connaissances dont je disposais. Cela dit, Je serais tres interesse d'avoir d'autres solutions et d'autres points de vue. Je vais tester votre Macro aussitot avoir envoyer ce message.

Ma formule hors contexte :

=IF(OR(IF(M3="y",VLOOKUP(C3,'Load F'!$B$2:$G$302,5,0),IF(ISNA(HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1))=TRUE,HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C2,'Load F'!$B$2:$B$302,0)+1),HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1)))=0,ISNA(IF(M3="y",VLOOKUP(C3,'Load F'!$B$2:$G$302,5,0),IF(ISNA(HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1))=TRUE,HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C2,'Load F'!$B$2:$B$302,0)+1),HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1))))),"",IF(M3="y",VLOOKUP(C3,'Load F'!$B$2:$G$302,5,0),IF(ISNA(HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1))=TRUE,HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C2,'Load F'!$B$2:$B$302,0)+1),HLOOKUP($C$2,'Load F'!$B$2:$B$302,MATCH(C3,'Load F'!$B$2:$B$302,0)+1))))

Elle est belle hein?? :rolleyes:

Pour ceux qui auraient la curiosite de regarder, et pour vous EXCEL-LENT, la premiere page est la page de saisie pour l'utilisateur. Il n'a qu'a remplir les cellules colorees. Voila tout, il n'a plus qu'a cliquer sur le bouton de son choix! Ensuite ces donnees sont envoyees sur la deuxieme page, qui retranscrit les donnes dans un ordre comprehensible par le logiciel qui recevra le mail final. Enfin la troisieme page sert uniquement de mise en forme, c'est celel-ci qui est utilisee pour "remplir" le mail qui sera envoye par la macro.

Dans l'attente de vous lire,

Cordialement,

leo

P.S: joli le nombre de messages... On pourrait croire a un fait expres :)
 

Pièces jointes

  • leo - XLD.zip
    33.4 KB · Affichages: 29
Dernière édition:

Statistiques des forums

Discussions
312 294
Messages
2 086 878
Membres
103 403
dernier inscrit
Kesb75