Microsoft 365 Nom d'onglet comme variable

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 !

Eric-ATI

XLDnaute Nouveau
Bonjour

En fait je ne trouve pas la fonction ou une syntaxe qui permette d'utiliser un nom d'onglet comme variable contenu dans un champs

exemple
j'ai un onglet "synthèse"
2 onglets "source1" et "source2" (en fait j'en ai en réalité 90)

sur la ligne 1 de "synthèse" je souhaite rappatrier des valeurs de l'onglet "source1" via la fonction recherchev(
sur la ligne 2 de "synthèse" je souhaite rappatrier des valeurs de l'onglet "source2" via la fonction recherchev(

exemple dans "synthèse" --> =RECHERCHEV([a1;Source1!$A:$W;20;FAUX)

je cherche à variabiliser la chaine "Source1"

C'est probablement une évidence mais je sèche...

Merci de votre aide
 
Bonjour

En fait je ne trouve pas la fonction ou une syntaxe qui permette d'utiliser un nom d'onglet comme variable contenu dans un champs

exemple
sur la ligne 1 de "synthèse" je souhaite rappatrier des valeurs de l'onglet "source1" via la fonction recherchev(
sur la ligne 2 de "synthèse" je souhaite rappatrier des valeurs de l'onglet "source2" via la fonction recherchev(
Merci de votre aide
Bonjour ,
La formule pourrait ressembler à ceci
Code:
=RECHERCHEV(A1;INDIRECT("'Source"&LIGNE()&"'!$A:$W");20;0)
 
Dernière édition:
Bonjour Eric-ATI, et bienvenu sur XLD,
Sans fichier test, on ne peut que supputer.
Par exemple vous pourriez faire :
VB:
Sub Essai()
    With Sheets("Synthèse")
        For N = 1 To 90     ' Pour les feuille Source1 à Source90
            .Cells(N, 2) = Application.VLookup(.Cells(N, 1), Sheets("Source" & N).Range("A:W"), 20, False)
        Next N
    End With
End Sub
En supposant que la valeur cherchée est en colonne A et la cellule résultat est en colonne B
 
Bonjour Eric-ATI, et bienvenu sur XLD,
Sans fichier test, on ne peut que supputer.
Par exemple vous pourriez faire :
VB:
Sub Essai()
    With Sheets("Synthèse")
        For N = 1 To 90     ' Pour les feuille Source1 à Source90
            .Cells(N, 2) = Application.VLookup(.Cells(N, 1), Sheets("Source" & N).Range("A:W"), 20, False)
        Next N
    End With
End Sub
En supposant que la valeur cherchée est en colonne A et la cellule résultat est en colonne B
Bonjour ,
Le formule pourrait ressembler à ceci
Code:
=RECHERCHEV(A1;INDIRECT("'Source"&LIGNE()&"'!$A:$W");20;0)
Top pour ta réponse... j'avais un problème de syntaxe
ça fonctionne merci
 
Bonjour Eric-ATI, et bienvenu sur XLD,
Sans fichier test, on ne peut que supputer.
Par exemple vous pourriez faire :
VB:
Sub Essai()
    With Sheets("Synthèse")
        For N = 1 To 90     ' Pour les feuille Source1 à Source90
            .Cells(N, 2) = Application.VLookup(.Cells(N, 1), Sheets("Source" & N).Range("A:W"), 20, False)
        Next N
    End With
End Sub
En supposant que la valeur cherchée est en colonne A et la cellule résultat est en colonne B
Merci je vais tester en VBA
 
- 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

Retour