Problème macro pour appeler valeur dans des tableaux

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 !

phnguyen

XLDnaute Nouveau
Bonjour le forum,

J'ai beaucoup de difficulté à faire cette macro, je m'explique, je voudrais à partir d'une listé déroulante qui se trouve en B12( voir fichier joint ), lorqu'on selectionne une variable, l'onglet associé pop on selectionne une cellule dans la colonne A ou Q et ça nous renvoi directement toute les valeurs associés sur la 1ère feuille sur les lignes 4 et 9, j'ai essayé dans tous les sens mais je suis dépassé, en espérant une aide de votre part merci.
 

Pièces jointes

Re : Problème macro pour appeler valeur dans des tableaux

re

afin de faire avancer ton problème, ci-joint ton fichier avec une liste déroulante en b12 contenant les noms des onglets.

quand tu sélectionnes un nom, tu va sur la feuille correspondante

a plus
 

Pièces jointes

Re : Problème macro pour appeler valeur dans des tableaux

merci c'est ce que je voulais, en faite vous avez créer via la boite à outil la zone modifiable que l'on peu bouger ou on veut 🙂 et ensuite rentrer ces quelques lignes, c'est simple quand on voit le résultat lol.

Maintenant pour continuer, il faudrait via cette zone modifiable lorsqu'on selectionne une variable par exemple IPE donc via votre macro l'onglet pop, il faudrait par exemple si c'est possible une inputbox qui nous demande de selectionner via un clique sur la colonne A par exemple de la cellule A12 jusqu'a A73 et qui nous renvoi toutes les valeurs de la ligne 12 jusqu'a la colonne 0 sur la feuille1 ligne 4

j'espère être clair dans ce que j'écris merci de m'aider ++
 

Pièces jointes

Dernière édition:
Re : Problème macro pour appeler valeur dans des tableaux

salut

en pièce jointe une proposition.

j'ai limité le choix dans les onglets à une seule LIGNE (la première sélectionnée)

je te laisse le soin de tester et nous dire si c'est ok.

a plus

ps : si ca te va je te commenterai le code, j'ai pas eu trop le temps de tester les bug
 

Pièces jointes

Re : Problème macro pour appeler valeur dans des tableaux

super!!, bon il y a quelque bugs les valeurs rapportés n'étaient pas bien calé, j'ai regardé ton code et j'ai arrangé tous ça, donc j'ai compris comment tu a fais

par contre j'ai essayé de rajouter toujours en prenant exemple ipe, donc actuellement en cliquant dans la colonne A ça renvoi les valeurs dans le feuille1 ligne 4, mais je voudrais aussi lorsqu'on clique dans la colonne Q de nous renvoyer les valeurs en ligne 9, j'ai essayé de le faire mais ça me renvoi rien, je te laisse le fichier
 

Pièces jointes

Re : Problème macro pour appeler valeur dans des tableaux

re

un truc dans ce style ?

Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim plg As Range
Dim i As Byte
Dim ligne As Byte


If Sh.Name = "Feuil1" Then Exit Sub

If flag = True Then
    flag = False
    On Error GoTo fin:
    Set plg = Application.InputBox("Merci de choisir une ligne", Type:=8)
    On Error GoTo 0
    If plg.Column = 1 Then ligne = 4 'si la premiere colonne =A on alimente la variable ligne =4
    If plg.Column = 17 Then ligne = 9
    Set plg = plg.Resize(1, 15)
    For i = 1 To 15
        Sheets("feuil1").Cells(ligne, i) = Sh.Cells(plg.Row, i + 1)
    Next i
    Sheets("feuil1").Select
End If

fin: Exit Sub
End Sub
 
Re : Problème macro pour appeler valeur dans des tableaux

salut

joues sur les colonnes, regardes la variable col dans ce code :

Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim plg As Range
Dim i As Byte
Dim ligne As Byte
Dim col As Byte

If Sh.Name = "Feuil1" Then Exit Sub

If flag = True Then
    flag = False
    On Error GoTo fin:
    Set plg = Application.InputBox("Merci de choisir une ligne", Type:=8)
    On Error GoTo 0
    If plg.Column = 1 Then ligne = 4: col = 15 'si la premiere colonne =A on alimente la variable ligne =4
    If plg.Column = 17 Then ligne = 9: col = 22
    Set plg = plg.Resize(1, col)
    For i = 1 To col
        Sheets("feuil1").Cells(ligne, i) = Sh.Cells(plg.Row, i + 1)
    Next i
    Sheets("feuil1").Select
End If

fin: Exit Sub
End Sub

a plus
 
Re : Problème macro pour appeler valeur dans des tableaux

Bonsoir, avant tout merci pour votre aide

D'accord avec l'ajout de la variable col = 15 on ramène toutes les valeurs de 1 à 15, mais par contre ça bug pour le col=22

If plg.Column = 1 Then ligne = 4: col = 15 'si la premiere colonne =A on alimente la variable ligne =4
If plg.Column = 17 Then ligne = 9: col = 22
Set plg = plg.Resize(1, col)
For i = 1 To col
Sheets("feuil1").Cells(ligne, i) = Sh.Cells(plg.Row, i + 1)
Next i
Sheets("feuil1").Select

Effectivement lorsqu'on clique sur la colonne 17 il me renvoi toutes les valeurs de 1 à 22 alors que je veux qu'il me ramène seulement les valeurs 18 à 22 comment puis je faire merci
 
- 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