Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

recherche position et collage

  • Initiateur de la discussion Initiateur de la discussion Olyxier
  • 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 !

Olyxier

XLDnaute Occasionnel
Bonjour le Forum

je souhaiterai avoir une macro qui recherche la position d'un numéro dans des colonne et qui colle le chiffre qui ce trouve à ça droite sous une liste.
En sachant qu'il y à des doublons celui qui doit être collé est le premier numéro trouvé je vous joint un fichier pour mieux me faire comprendre.

je vous remercie pour le temps que vous aller me consacrer sur ce problème qui pour moi est impossible.
 

Pièces jointes

Re : recherche position et collage

Merci JBARBE cette formule marche super bien. Mais comme je suis pas très bon en code j'ai besoin de comprendre le fonctionnement de la macro pour l'emplacement des résultats ok. Mais si je modifie l'emplacement dans la feuille des colonne de recherche, ou si il y a d'autre fonction dans la feuille qu'elles sont les ligne à modifier dans le code car si je comprend bien cela For i = 7 To 65536 dit que c'est sur toutes les ligne de 7 à 65536 non? et je vois pas trop ou ce trouve les colonne C,D,F,G
merci pour votre aide
 
Dernière édition:
Re : recherche position et collage

Un descriptif est mis également dans la macro !

Code:
Option Explicit

Sub copie()
Dim i As Long
Dim k As Long
Dim p As Long
Dim x As Integer
Dim j As Integer
Dim h As Integer
Range("M17:AK17").ClearContents ' suppression du contenu de la colonne M à AK ligne 17
For i = 7 To 65536 ' boucle de la ligne 7 à 65536
 If Cells(i, 3) = "" Then Exit For ' si la cellule ligne i de la colonne C est vide alors sortir
 For j = 13 To 37 ' boucle de la colonne M à la colonne AK
 If Cells(i, 3) = Cells(16, j) And Cells(17, j) = "" Then ' si la cellule ligne i colonne C est égale à la cellule ligne 16 colonne M à AK
 ' et que la cellule en dessous ligne 17 celle-ci est vide alors
  Cells(17, j) = Cells(i, 4) ' la cellule ligne 17 colonne M à AK est égale à la cellule ligne i colonne C
  Exit For ' sortie de la boucle
  End If ' fin si
 Next j ' fin boucle j
Next i ' fin boucle i

For k = 7 To 65536 ' idem que pour i
If Cells(k, 6) = "" Then Exit For ' colonne F concernée
For x = 13 To 37 ' idem que pour j
  If Cells(k, 6) = Cells(16, x) And Cells(17, x) = "" Then
  Cells(17, x) = Cells(k, 7)
  Exit For
  End If
Next x
Next k

For p = 7 To 65536 ' idem que pour i
If Cells(p, 9) = "" Then Exit For 'colonne I concernée
For h = 13 To 37 ' idem que pour j
  If Cells(p, 9) = Cells(16, h) And Cells(17, h) = "" Then
  Cells(17, h) = Cells(p, 10)
  Exit For
  End If
 Next h
Next p

End Sub

bonne journée
 

Pièces jointes

Dernière édition:
- 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

Discussions similaires

Réponses
5
Affichages
373
Réponses
7
Affichages
995
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…