Comment récuper une valeur après un filtre
Fermé
Steinner
-
28 mai 2019 à 15:13
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 - 3 juin 2019 à 08:55
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 - 3 juin 2019 à 08:55
A voir également:
- Comment récuper une valeur après un filtre
- Photo filtre gratuit - Télécharger - Retouche d'image
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Excel
- Pièce 2 euros dessin bonhomme valeur ✓ - Forum Loisirs / Divertissements
- Filtre snap pour mettre une photo de sa galerie ✓ - Forum Android
- Filtre manga - Guide
5 réponses
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
29 mai 2019 à 17:11
29 mai 2019 à 17:11
Dis moi si ça te va
Private Sub CommandButton2_Click()
Dim Acier As String, Diametre1 As String, Diametre2 As String, Diametre3 As String
Dim Assemblage As String, Epaisseur As String, Position As String
Dim derLig As Integer
Dim i As Integer
Dim tmpItem As String
Acier = ComboBox1.Value
Assemblage = ComboBox2.Value
Epaisseur = ComboBox3.Value
Position = ComboBox4.Value
Diametre1 = ComboBox5.Value
Diametre2 = ComboBox6.Value
Diametre3 = ComboBox7.Value
derLig = Worksheets("Analyse").Range("A" & Rows.Count).End(xlUp).Row
Worksheets("Analyse").Activate
For i = 2 To derLig
tmpItem = Range("B" & i) & Range("C" & i) & Range("D" & i) & Range("E" & i) & Range("F" & i)
If tmpItem = Acier & Diametre1 & Assemblage & Epaisseur & Position Then Range("H1").Value = Range("G" & i).Value
If tmpItem = Acier & Diametre2 & Assemblage & Epaisseur & Position Then Range("I1").Value = Range("G" & i).Value
If tmpItem = Acier & Diametre3 & Assemblage & Epaisseur & Position Then Range("J1").Value = Range("G" & i).Value
Next i
End Sub
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
28 mai 2019 à 15:20
28 mai 2019 à 15:20
bonjour,
je commencerai par essayer avec
je commencerai par essayer avec
For Each Cell In Range("G2:G16641") à mon humble avis..
Bonjour,
Merci de votre réponse mais ça ne marche pas si vous avez d'autres propositions je suis preneur.
Merci de votre réponse mais ça ne marche pas si vous avez d'autres propositions je suis preneur.
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
Modifié le 29 mai 2019 à 10:05
Modifié le 29 mai 2019 à 10:05
Voilà comment il faut l'écrire :
Sub test()
Dim Analyse As String
For Each Cell In Range("G2:G16641").SpecialCells(xlCellTypeVisible)
If Cell.Value <> "" Then
Analyse = Cell.Value
Worksheets(Analyse).Range("H1") = "yes"
End If
Next
End Sub
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
Modifié le 29 mai 2019 à 10:52
Modifié le 29 mai 2019 à 10:52
chez moi ça fonctionne..
essaye en nommant la feuille ou se situe le range("G2:G16641") en écrivant plutot
parce que si tu ne nommes pas de feuille excel va aller chercher dans la feuille active et forcément ça ne fonctionnera pas si tu n'es pas de base sur la feuille voulue..
essaye en nommant la feuille ou se situe le range("G2:G16641") en écrivant plutot
worksheets("NOMDETAFEUILLE").range("G2:G16641")
parce que si tu ne nommes pas de feuille excel va aller chercher dans la feuille active et forcément ça ne fonctionnera pas si tu n'es pas de base sur la feuille voulue..
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
29 mai 2019 à 11:00
29 mai 2019 à 11:00
envoie un fichier exemple via mon partage en veillant bien à ce qu'il ne comporte pas de données confidentielles dans cas parce que "ça ne fonctionne pas" ne donne aucunes indications sur ce qui bloque
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
Modifié le 29 mai 2019 à 13:42
Modifié le 29 mai 2019 à 13:42
Décryptons ta procédure pour bien comprendre :
en voyant ton fichier je pense que ce n'est pas du tout ce que tu attends.. je me trompe?
Dim Analyse As String'ici tu déclares une variable "Analyse" de type String : qui reçoit du texte
For Each Cell In Range("G2:G16641").SpecialCells(xlCellTypeVisible) ici on demande à excel de verifier chaque cellule de G2 à G16641 (de quelle feuille, ça c'est pas précisé)
If Cell.Value <> "" ThenSi La cellule en cours de vérification est différente de vide, fait ce qu'il suit
Analyse = Cell.ValueLa variable Analyse reçoit la valeur de la cellule en cours (valeur qui n'est pas String du tout au passage)
Worksheets(Analyse).Range("H1") = "yes" ici tu demandes d'aller écrire "yes" dans la cellule H1 de la feuille qui porte le nom que l'on vient de récupérer dans la variable Analyse
End IfFin du IF
Nexton passe à la cellule suivante
en voyant ton fichier je pense que ce n'est pas du tout ce que tu attends.. je me trompe?
Steinned
Messages postés
24
Date d'inscription
mercredi 29 mai 2019
Statut
Membre
Dernière intervention
9 janvier 2021
29 mai 2019 à 13:51
29 mai 2019 à 13:51
En effet l'idée de la macro est ailleurs.
Dans l'idéal je cherche à faire que ma macro prenne la valeur en colonne G après filtrage et me l'écrive en H1
Dans l'idéal je cherche à faire que ma macro prenne la valeur en colonne G après filtrage et me l'écrive en H1
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
29 mai 2019 à 14:04
29 mai 2019 à 14:04
et quel filtre est ce que tu attends exactement?
Steinned
Messages postés
24
Date d'inscription
mercredi 29 mai 2019
Statut
Membre
Dernière intervention
9 janvier 2021
29 mai 2019 à 14:10
29 mai 2019 à 14:10
Les colonnes B à F reprennent l'ensemble de les filtres que j'ai.
je me sers de ces 5 paramètres pour définir la valeur en G.
je me sers de ces 5 paramètres pour définir la valeur en G.
fabien25000
Messages postés
673
Date d'inscription
mercredi 5 octobre 2016
Statut
Membre
Dernière intervention
28 juillet 2022
59
29 mai 2019 à 14:17
29 mai 2019 à 14:17
donc tu veux appliquer un filtre selon 5 critères pour qu'il ne reste qu'un article et que la valeur de la colonne G s'inscrive en H1?
Steinned
Messages postés
24
Date d'inscription
mercredi 29 mai 2019
Statut
Membre
Dernière intervention
9 janvier 2021
29 mai 2019 à 14:21
29 mai 2019 à 14:21
Oui
3 juin 2019 à 08:37
hormis la ligne Private sub CommandButton2_Click() qui fait doublon à celle que j'utilise ça marche super bien. je te remercie ça va bien m'aider
3 juin 2019 à 08:55