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

XL 2016 Fonction RechercheV + Decaler sur feuil2

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 !

MORISS

XLDnaute Junior
Bonjour,

Je viens vers vous car j'aimerais rechercher dans un tableau d'une autre feuil certaine infos d'une description.

J'aimerais en F25 récupérer uniquement la première partie de la description et en G25 la deuxième partie de la description.

Exemple de description : AAA 24*45g

F25 = 24
G25 = 45

Je joint un tableau ou les cellules son remplie manuellement.

Merci d'avance
 

Pièces jointes

Bonjour MORISS, chris, JHA,

D'après le post #1 on ne s'occupe que des nombres (2 ou 3).

Voyez le fichier joint et cette fonction VBA (matricielle) :
Code:
Function N_2_3(t$)
Dim i%, j%, a&(1 To 2), k%
t = Replace(t, " ", "") 'suppression des espaces nécessaire ?
t = "z" & t
For i = 3 To Len(t)
  If Not IsNumeric(Mid(t, i, 1)) And Mid(t, i - 1, 3) Like "#?#" Then
    For j = i - 2 To 1 Step -1
      If Not IsNumeric(Mid(t, j, 1)) Then Exit For
    Next j
    a(1) = Mid(t, j + 1, i - j - 1)
    For j = i + 2 To Len(t)
      If Not IsNumeric(Mid(t, j, 1)) Then Exit For
    Next j
    a(2) = Mid(t, i + 1, j - i - 1)
    If IsNumeric(Mid(t, j + 1, 1)) Then 'si 3 nombres successifs
      a(1) = a(1) * a(2)
      For k = j + 2 To Len(t)
        If Not IsNumeric(Mid(t, k, 1)) Then Exit For
      Next k
      a(2) = Mid(t, j + 1, k - j - 1)
    End If
    Exit For
  End If
Next i
N_2_3 = a 'matrice (vecteur ligne)
End Function
Elle doit impérativement être placée dans un module standard.

Elle est utilisée dans la plage F25:G25 avec cette formule validée matriciellement :
Code:
=SIERREUR(N_2_3(RECHERCHEV(D25;Feuil2!B:C;2;0));"")
Bien noter que le séparateur des 2 ou 3 nombres peut être quelconque (un seul caractère).

A+
 

Pièces jointes

Bonjour,

Merci pour votre retour,

J'ai installer votre macro en module3 et inscris vos formules.

Je fait ctrl+Maj+Entré excel n’active pas les matrices, le curseur tourne pendant quelque seconde puis rien.

Cordialement
 
Bonjour MORRIS, le forum,

Le fichier que j'ai joint donne bien les bons résultats en F25:G33 non ?

Sur un autre fichier faites exactement ce que j'ai écrit :

- sélectionner la plage F25:G25 et dans la barre de formules entrer la formule
Code:
=SIERREUR(N_2_3(RECHERCHEV(D25;Feuil2!B:C;2;0));"")
- valider matriciellement par Ctrl+Maj+Entrée

- copier-Collage spécial-Formules de F25:G25 vers le bas.

Bonne journée.
 
Bonjour,

Merci pour votre retour,

Je fait exactement comme vous seulement sur mon excel pour valider une matrice il faut faire ctrl+shift+entré.

Quand je fait cela en sélectionnant la plage des cellules F25 et G25 excel me dit : Un tableau ne peut pas contenir de formules matricielles à plusieurs cellules.

Donc je fait cela une cellule après l'autre mais il me donne aucun résultat.

Cordialement
 
Re,

Votre tableau est organisé en tableau Excel, vous ne l'aviez pas dit.

Alors entrez en F25 et validez normalement :
Code:
=SIERREUR(INDEX(N_2_3(RECHERCHEV($D25;Feuil2!$B:$C;2;0));COLONNES($D25:D25));"")
Copier-Collage spécial-Formules de F25 surs F25:G33.

Fichier (2).

A+
 

Pièces jointes

- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…