VBA - filtre et colonne
Résolu
mcou
-
mcou -
mcou -
Bonjour,
Bonjour
J'effectue parfois des filtres. La macro ci dessous sert à lancer un formulaire de vérification. Avant que celui-ci se lance, je vérifie s'il existe des filtres dans ma feuille et, si c'est le cas, demande à mon utilisateur s'il souhaite maintenir ou enlever ces filtres pour la vérification.
Je souhaite indiquer dans ma msgbox, s'il existe un filtre, le numéro de la colonne filtrée ainsi que son entête (l'entête est toujours situé en ligne 3).
Les enregistrements commencent à la ligne 4...
Comment faire ?
Voici mon code :
Merci de votre aide.
Bonjour
J'effectue parfois des filtres. La macro ci dessous sert à lancer un formulaire de vérification. Avant que celui-ci se lance, je vérifie s'il existe des filtres dans ma feuille et, si c'est le cas, demande à mon utilisateur s'il souhaite maintenir ou enlever ces filtres pour la vérification.
Je souhaite indiquer dans ma msgbox, s'il existe un filtre, le numéro de la colonne filtrée ainsi que son entête (l'entête est toujours situé en ligne 3).
Les enregistrements commencent à la ligne 4...
Comment faire ?
Voici mon code :
Sub lancerUF() ' cette macro lance le formulaire et vérifie s'il existe des filtres Dim rep As Variant 'déclaration de la variable rep comme étant la réponse attendue à la première fenêtre With Sheets("FOLLOW-UP") If .FilterMode = True Then rep = MsgBox("Il y a un filtre sur la colonne :" & .Columns & "Voulez-vous effectuer la vérification sur le filtre ?", vbYesNo + vbQuestion, "FILTRE") 'affiche le numéro de référence de la ligne à solder If rep = 7 Then 'valeur 7 correspond à la réponse non Sheets("FOLLOW-UP").ShowAllData 'si "non", alors on enlève tous les filtres de la feuille FOLLOW-UP End If End If End With Verification_ALL.Show 'affiche le formulaire Verification_ALL Range("A1").Select 'se positionne en cellule A1 End Sub
Merci de votre aide.
A voir également:
- VBA - filtre et colonne
- Déplacer colonne excel - Guide
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Trier colonne excel - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
1 réponse
Solution trouvée toute seule :
Sub lancerUF() ' lance le formulaire et vérifie s'il existe des filtres Dim rep As Variant 'déclaration de la variable rep comme étant la réponse attendue à la première fenêtre If Sheets("FOLLOW-UP").FilterMode = True Then For Each cell In Range("A3:U3") If cell.Interior.ColorIndex = 6 Then rep = MsgBox("Il y a un filtre sur la colonne " & cell.Column & " - " & cell.Value & ". Voulez-vous effectuer la vérification sur le filtre ?", vbYesNo + vbQuestion, "FILTRE") 'affiche le numero de colonne où est situé le filtre ainsi que l'entête If rep = 7 Then 'valeur 7 correspond à la réponse non Sheets("FOLLOW-UP").ShowAllData 'si "non", alors on enlève tous les filtres de la feuille FOLLOW-UP End If End If Next End If Verification_ALL.Show 'affiche le formulaire Verification_ALL Range("A1").Select 'se positionne en cellule A1 End Sub