Macro Remplacement chaines de caractères

Fermé
johnCAL Messages postés 1 Date d'inscription vendredi 6 juin 2008 Statut Membre Dernière intervention 6 juin 2008 - 6 juin 2008 à 15:45
Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 - 8 juin 2008 à 07:29
Bonjour à tous

Je cherche à créer une macro sous excel qui me servrait à remplacer d'une simple commande une série de textes contenues dans une colonne. Je m'xplique plus précisément.

J'ai un fichier excel avec 4 colonnes dans une première feuille1 et un tableau de points à 5 colonnes dans une feuille2.
La commande doit seulement modifier la 5eme colonne de la feuille2.

La feuille1 contient des nombres de 100 à 1002. La première colonne des nombres 100,301,403,.... de même pour la seconde colonne 302,... et ainsi de suite pour la 3eme et 4eme colonne.

Par contre et c'est là l'essentiel, si par exemple

De même, si la cellule E50 (valeur =850) de la feuille2 correspond à un nombre de la colonne1 de la feuille1, alors la commande doit remplacer le nombre par le nombre plus un suffixe du type 850.0.

Je sais ce n'est pas très clair comme çà mais le fichier joint vous permettra d'y voir un peu plus clair.
Voici les mofis à réaliser pour que la macro marche bien.

1-Si dans la colonne E de la feuille2, il y a des nombres qui correspondent à un de ceux de la colonne A de la feuille1 alors : le NOMBRE doit être remplacé par NOMBRE + SUFFIXE du type NOMBRE.0 Exemple Cellule E1 nombre 908 qui doit être remplacé par 908.0

2-Si dans la colonne E de la feuille2, il y a des nombres qui correspondent à un de ceux de la colonne B de la feuille1 alors il n'y a aucune modification.

3-Si dans la colonne E de la feuille2, il y a des nombres qui correspondent à un de ceux de la colonne C de la feuille1 alors il faut effacer les nombres des deux cellules suivants le nombre en question Exemple : si en E172 il y a le nombre 836 alors la commande doit effacer les nombres des deux cellules suivantes donc effacer les valeurs des cellules E173 et E174.

4-Si dans la colonne E de la feuille2, il y a des nombres qui correspondent à un de ceux de la colonne D de la feuille1 alors il faut effacer lla valeur de la cellule suivante.

5- Aucun nombre de doit avoir de suffixe .3 Exemple la cellule E3 908.3 de la feuille2 doit être remplacé par 908.1 et ceci pour chaque nombre qui correspond à un des nombres de la colonne A de la feuille1.

Le but étant de modifier au final un fichier excel sans avoir à reprendre lignes par lignes cellule par cellule leurs contenus.

Je sais programmer en Lisp sous AutoCAD mais je n'ai vraiment aucune notion du vba. Je me suis renseigné sur certains forums et il est impossible d'ouvrir un fichier excel depuis une simple commande lisp d'où voila mon problème et le temps que je passe sur le traitement d'un fichier.

Ou du moins, si vous pouvez me fournir une partie de code dèjà ce sera bien moi après même si je ne connais pas trop voir pas du tout le vba, je pense que je pourrais me démerder.
J'ai vu une discussion sur ce site une macro qui m'était en couleur une cellule dont la valeur était recherché mais le lien est mort.

http://www.commentcamarche.net/forum/affich 3624003 vba excel chaine caractere recherche multiple

Merci par avance pour toutes vos réponses.
A voir également:

1 réponse

Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
8 juin 2008 à 07:29
Hi John,
tu as omis de joindre le fichier auquel tu fais allusion. Remédies-y donc, ça facilitera les réponses !
I.
2