Mettre en boucle le numero de colonne dans uen recherchev

e cherche à créer une macro qui fait une recherchev en boucle: Je m'explique je veux quelque parte de la première cellule du tableau et qu'elle fasse une recherche v par rapport a un autre tableau, donc je veux qu'ellel se dplace sur une cellule ligne 6 et qu'elle se déplance par colonne sur 10 colonne. Pour le résultat c'est pareil je voudrais qu'elle prenne le resutat par rapport au colonne.

En gros je veux que dans ma premiere cellule il y ai le resultat de la recherche v dans l autre tableau qui correspond a la colonne 20 dans mon autre tableau, et dans ma cellule juste apres je veux qu'il y ai le resultat de la recherchev qui correpond a l autr etableau mais cette fois ci colonne 21:

Public Sub Marecherchev()

'indice pour ligne et colonne

Dim i As Long, j As Lon

'pour parcourir les cellules

For i = 21 To 31 Step 1 'lignes 2 à 6

For j = 20 To 30 Step 1

Cells(6, i).FormulaR1C1 = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30,j,FALSE),""""

Next j

Next i

End Sub

EN gros je voudrais que mettre en boucle la troisieme occurence dans la fonction recherche v "numéro de colonne"

Voila le code que j'ai tenté, cela met bien les formule recherchev dans toute mes cellules cependant ca me laisse "j" dans ma formule au lieu de faire la boucle aussi.

Merci d'avance

bonjour,

essaie ceci, note qu'il doit y avoir un problème dans ta boucle. tu écris ta formule avec toutes les valeurs de j dans la même cellule (cells(6,i)), in fine ta formule contient la valeur 30 (dernière valeur pour j). vérifie aussi si C1:C30 est un adressage colonne,ligne (mode R1C1) ou un adressage ligne, colonne(mode A1) auquel cas il faut convertir C1:C30 en mode R1C1 (R1C3:R30C3). Enfin il manquait une parenthèse à la fin de ta formule.

Public Sub Marecherchev()
'indice pour ligne et colonne
Dim i As Long, j As Long

'pour parcourir les cellules
For i = 21 To 31 Step 1 'lignes 2 à 6
For j = 20 To 30 Step 1
Cells(6, i).FormulaR1C1 = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30," & j & ",FALSE),"""")"

Next j
Next i

End Sub

Bonjour,

Essaie ceci :

Cells(6, i).FormulaR1C1 = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30," & j & ",FALSE),""""

COrdialement

Gérard

Bonjour h2so4

Effectivement ma boucle ne renvoit que la derniere colonne la 30, comment faire pour que chaque cellule ait sa fonction spécifique avec pour une cellule une differente colonne ???

fichier de base

fichier ou je vais chercher les données

bonjour,

je ferais ceci

Public Sub Marecherchev()
'indice pour ligne et colonne
    Dim i As Long, j As Long
    'pour parcourir les cellules
    For j = 20 To 30 Step 1
        Cells(6, j).FormulaR1C1 = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30," & j & ",FALSE),"""")"
    Next j
End Sub

Merci pour ta réponse

, mais du coup il faudrait que dans mes deux tableau ce soit les meme numéro de colonnes hors c'est pas le cas en gros celulle (6, 21) = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30,20,FALSE),"""")"

et cellule (22) = 21 et ainsi de suite, du coup je suis obligé de faire une boucle qui pousse ma macro a parcourir mes cellules de colonne en colonne

Mick

re-bonjour,

sans avoir vérifié davantage, j'ajouterais 1 à j dans cells(6,j)

Public Sub Marecherchev()
'indice pour ligne et colonne
    Dim i As Long, j As Long
    'pour parcourir les cellules
    For j = 20 To 30 Step 1
        Cells(6, j+1).FormulaR1C1 = "=IFERROR(VLOOKUP(RC2,'[Copie de P&L Nov_Valeurs-1.xlsx]Feuil1'!C1:C30," & j & ",FALSE),"""")"
    Next j
End Sub

Comme tu as l air vraiment bouillant en excsel, je me permet et apres je t'embete plus lol

Bonjour,

Je voudrais faire la somme des produit de la colonne h seulement si la colonne b contient l'expression "S/Total R2017"

j'ai tenté ca :

=SOMME.SI(B12:B659;"GAUCHE(S/Total R2017/20652;13)";H12:H659)

Mais ca me donne zéro

merci a vous

2fc-fs-hsbc.zip (58.55 Ko)

bonjour

voici ta formule revisée, pour qu'elle fonctionne j'ai dû remplacer tous les blancs " " par "" en colonne H

=SOMMEPROD((GAUCHE(B12:B659;13)="S/Total R2017")*(H12:H659))

je n'ai pas vérifié si le résultat était correct.

6fc-fs-hsbc.zip (58.81 Ko)

ca partait bien, je pensais que c'etait bon mais ce me met #VALEUR

DOMMAGE MAIS MERCI QUAND MEME

bonsoir,

as-tu lu ma réponse et notamment "... pour qu'elle fonctionne ..." ?

la formule en question je l'ai mise dans ton fichier (que j'ai corrigé) et cela fonctionne ... mais je vois que tu ne l'as pas téléchargé. Utiliserais-tu un autre fichier ?

Salut,

C'est vrai j'avais pas vu le "pour qu'elle fonctionne" autant pour moi lol, DU coup je vais t'en demander une autre.

Selon toujours le meme fichier je voudrais faire la somme si :

collone B j'ai "S/Total insertion" et en colonne G le nom "Invite Media" :

=SOMME.SI.ENS(I14:I660;B14:B660;"S/Total insertion";G14:G660;"INVITE MEDIA")

ca me met zéro

4fc-fs-hsbc.zip (100.29 Ko)

bonjour,

une possibilité, via une formule adaptée à ton fichier exemple. à mettre en D664 et à tirer vers le bas.

=SOMME.SI.ENS($I$14:$I$660;$B$14:$B$660;"S/Total Insertion*";$G$14:$G$660;B664&"*")

Merci t'es vraiment un jedi d'excel lol, dernière question. Pourquoi l utilisation des petite" * " (etoiles"

re-bonjour,

c'est une fonctionnalité que j'avais zappée dans ma solution à ta première question concernant les somme.si(.ens)

l'astérisque représente n'importe quelle suite de caractères. donc "S/Total*" permettra de sélectionner tout ce qui commence par "S/Total" peut importe les caractères qui suivent.

Rechercher des sujets similaires à "mettre boucle numero colonne uen recherchev"