Forum Clubic

Problème de vb : recherche d'une valeur dans plusieurs feuilles d'un même fichier

Bonjour,

J’aimerais réaliser la chose suivante :
J’ai un fichier Excel dans lequel se trouve plusieurs dizaines de feuilles dont leurs mises en pages sont identiques. Il existe 4 colonnes, seules certaines valeurs des cellules des colonnes A B & C changent, celles de colonne D ne change pas.
J’aimerais rechercher une valeur particulière présente en colonne D dans tout le fichier. Et pour toutes occurrences trouvées, je voudrais copier les valeurs des cellules en colonne A correspondantes dans un fichier tiers.

Exemple :

Je recherche les @IPs du serveur 1, et donc je recherche la valeur “serveur1” :
Onglet A:
10.186.10.35 | 255.255.255.0 | 10.186.10.1 | serveur1
Onglet B:
10.186.11.35 | 255.255.255.0 | 10.186.11.1 | serveur1
Onglet C:
10.186.12.35 | 255.255.255.0 | 10.186.12.1 | serveur1

j’aimerais que mon fichier tiers contiennent :
10.186.10.35
10.186.11.35
10.186.12.35

Je suis débutant. Et avec l’enregistrement de macro, je suis bloqué au fait de trouver une second valeur. Je reste toujours bloqué à la cellule de l’onglet A.

D’avance merci de votre aide.

La macro automatique, c’est souvent la solution, à condition de la remanier manuellement derrière.
Si tu veux de l’aide, il faut que tu nous donnes ton code optimisé, pour qu’on voie ce qui pourrait y manquer.
Si tu pouvais joindre un fichier exemple, ce ne serait pas mal non plus, histoire de parler des mêmes choses (par exemple le nom des onglets et du fichier cible)

Voilà ma macro :

IP-QC-TEST.xls est le fichier avec les multiples onglets.
Cluster - easymk_v4.0.xlsm est le fichier où ces informations doivent être copiés.

J’ai effectivement modifié plusieurs informations depuis l’enregistrement automatique. Mais mon code bloque sur la recherche d’une seconde valeur.

J’espère que c’est plus clair. Merci de votre aide.

C’est déjà un peu plus clair, mais quand même, à la simple lecture :

Dim Node_3963 As String
Dim IP1_Node_3963 As String

ok pour la déclaration des variables, mais sachant qu’elles sont appelées à prendre différentes valeurs, leur nom est-il bien parlant pour toi ? “serveur” n’aurait pas été plus parlant ? (ça peut rester tel quel, ce n’est pas bloquant)

J’ai un fichier Excel dans lequel se trouvent plusieurs dizaines de feuilles dont leurs mises en pages sont identiques…
J’aimerais rechercher une valeur particulière présente en colonne D dans tout le fichier

A la lecture de ta macro, tu restes toujours sur la même feuille. Il n’y a rien d’ailleurs qui implique que ce soit la première.
Par contre, ta démarche semble indiquer qu’il existe plusieurs lignes à relever dans chaque feuille. Tu confirmes ?

J’aimerais rechercher une valeur particulière présente en colonne D
Alors pourquoi lancer la recherche sur tout le fichier et non pas sur une sélection des cellules utilisées de la colonne D ?
Dans cette hypothèse, il serait intéressant de savoir si l’ensemble des valeurs colonne D forme un bloc compact, autrement dit si la plage première ligne utile-dernière ligne utile de la colonne D est susceptible ou non de comporter des cellules vides.

Windows(“IP-QC-TEST.xls”).Activate
ActiveWindow.Close

Tu fermes ton fichier cible mais pas ton fichier source ?