Masquer une ligne sous condition

Résolu/Fermé
Utilisateur anonyme - 26 avril 2010 à 16:19
 Utilisateur anonyme - 1 mai 2010 à 16:27
Bonjour,

Je travaille sur un tableau Excel qui contient une liste de données.
Je voudrai pouvoir masquer des lignes en fonction de la valeur inscrite dans les lignes de la colonne A.

En fait j'ai une liste déroulant et j'aimerai qu'on fonction du choix spécifié dans la cellule de la liste déroulante, seules s'affichent les lignes en rapport.

Par exple si je sélectionne dans la liste déroulant le service 10
Dans la colonne service en dessous je ne voudrai masquer les lignes des autres services (11 ; ...)

J'ai utiliser la macro ci-dessous que j'ai copier d'une autre discussion mais je ne comprends pas pourquoi elle ne marche pas

Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range, c As Range
Set plage = [A7:A100]
For Each c In plage
If c.Value = "C4" Then
c.EntireRow.Hidden = True
Else
c.EntireRow.Hidden = False
End If
Next c
plage = Nothing
End Sub

Pourriez-vous m'aider, s'il vous plaît.

Merci d'avance

Laure


A voir également:

19 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
26 avril 2010 à 16:57
Salut,

Essaye plutôt comme cela

Private Sub Worksheet_Change(ByVal Target As Range)
Set MyPlage = Range("A7:A100")
For Each cell In MyPlage
If cell.Value = [C4] Then
cell.EntireRow.Hidden = True
ElseIf cell.Value <> [C4] Then
cell.EntireRow.Hidden = False
End If
Next
End Sub
0
Utilisateur anonyme
27 avril 2010 à 09:44
Salut

En fait là je ne sais pas pourquoi mais la macro n'apparaissait pas dans la liste des macro à exécuter; alors je l'ai modifiée et là ça va.

Merci pour votre aide

Sub test()
Set MyPlage = Range("A7:A100")
For Each Cell In MyPlage
If Cell.Value = [C4] Then
Cell.EntireRow.Hidden = False
ElseIf Cell.Value <> [C4] Then
Cell.EntireRow.Hidden = True
End If
Next
End Sub

Laure
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
Modifié par eriiic le 26/04/2010 à 21:31
Bonsoir,

Et un simple filtre automatique sur la colonne ayant le n° du service ne suffit pas ????
C'est exactement le fonctionnement que tu décris : une liste déroulante où l'on choisi ce qui doit être affiché....

eric
0
Utilisateur anonyme
27 avril 2010 à 09:43
Bonjour Eric,

Oui j'ai pensé à mettre un filtre automatique, mais en fait j'essaye de faire deux tableau en lien un synthétique et un autre qui afficherait les détails par service.
Donc je voudrai au final arriver à insérer un bouton sur la feuille du tableau synthétique « afficher détail » qui ouvrirai une autre feuille Excel mais n'afficherai que le détail du service sélectionner dans la 1ère feuille.

La macro de Mike après une `tite modification semble marcher, heuu si tu as une idée sur la suite des macros à insérer, merci de bien vouloir me les indiquer.

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
27 avril 2010 à 11:28
Re,

Tu colles ce code dans un module et tu crées un bouton sur la feuille du tableau synthétique en supposant que le deuxième tableau se trouve sur la feuille3 (à modifier)
pour afficher toutes le valeurs effacer le contenu en C4 et activer le code ou on sépare le code avec une partie dans la Worksheet pour un retour automatique pour un affichage total lorsque C4 est vide

Sub Affiche_Détail()
Sheets("Feuil3").Activate
Set MyPlage = Range("A7:A100")
If [C4] = "" Then
MyPlage.EntireRow.Hidden = False
Exit Sub
End If
For Each cell In MyPlage
If cell.Value = [C4] Then
cell.EntireRow.Hidden = True
ElseIf cell.Value <> [C4] Then
cell.EntireRow.Hidden = False
End If
Next
End Sub
0
Utilisateur anonyme
27 avril 2010 à 17:02
Bonjour Mike

Je n'ai pas encore pu tester ta macro car j'ai dû modifier mon fichier.

Pourrais-tu m'indiquer comment créer un bouton sur Excel et comment faire pour que la macro se déclenche automatiquement dès qu'un choix est sélectionné.

J'ai bidouillé à partir d'exemples cette macro, et j'aimerai qu'elle s'exécute automatiquement chaque fois que le fichier est mis à jour par les différents utilisateurs (qui le remplissent manuellement).

Sub Masquer_les_lignes_inutiles()

Range("g2:g50").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True

End Sub

Merci d'avance.

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
27 avril 2010 à 22:16
Re,

Pour exécuter une macro automatiquement, plusieurs possibilités, mais la pls simple est de mettre le code dans les propriétés de la feuille concernée (clic droit sur l'onglet de feuille/Visualiser le code)
et mettre le code à exécuter dans

Private Sub Worksheet_Change(ByVal Target As Range)
mettre le code à exécuter ici, dès qu'une valeur change, le code s'exécute
End sub
ou
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ici le code s'exécutera chaque fois que la cellule active changera
End sub

Un déclenchement par bouton ne se fera que sur ordre et pour créer un bouton deux possibilités avec la barre d'outils formulaire dans ce cas associer la macro au bouton (clic droit sur le bouton/Affecter une macro)
ou avec la barre d'outils contrôle ce qui génére ce début de code

Private Sub CommandButton1_Click()
et ici on place soit le code à exécuter
soit le nom de la mocro à exécuter
End Sub

Pour le code ci dessous, que veux tu exactement faire, masquer les lignes mais sur quel critère

Sub Masquer_les_lignes_inutiles()
Range("g2:g50").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True
End Sub
0
Utilisateur anonyme
27 avril 2010 à 22:46
Bonsoir,

Merci pour ton aide. Sans vouloir abuser...

Je voudrai que cette macro me masque les lignes dès que la cellule de la colonne G de la même ligne est vide.

Mais là en fait je viens de constater que du coup elle me masque tout mon tableau même les lignes non remplies, ce que je ne veux pas.

Serait-il possible de modifier cette macro afin qu'elle me masque les lignes en question si la cellule correspondante de la colonne G est vide et la cellule correspondante de la colonne A non vide.

Merci d'avance

Laure
0
Utilisateur anonyme
27 avril 2010 à 23:27
Bonsoir,

J'ai bien réussi à insérer un bouton sur la Feuil1 à lui affecter une macro afin d'afficher le détail qui se situe en Feuil4.

Mais là je ne sais pas pourquoi ça ne marche pas, ça me signale « Impossible d'exécuter le code en mode arrêt » ou Erreur d'exécution "9"; L'indice n'appartient pas à la sélection »???

Voici la macro :

Sub Afficher_Détail()
Sheets("Feuil4").Activate
Set MyPlage = Range("A2:A1511")
If [C4] = "" Then
MyPlage.EntireRow.Hidden = False
Exit Sub
End If
For Each cell In MyPlage
If cell.Value = [C4] Then
cell.EntireRow.Hidden = True
ElseIf cell.Value <> [C4] Then
cell.EntireRow.Hidden = False
End If
Next
End Sub

Merci d'avance

Laure
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 27/04/2010 à 23:48
Re,

une macro pour masquer les lignes vides par rapport aux cellule vide plage G2 à G50
et une pour afficher les lignes masquées

Sub Masquer_Lignes_Vides()
Application.ScreenUpdating = False
Range("G2:G50").Select
For Each Cell In Selection
Cpt = 0
For i = 0 To 7
If Cell.Offset(0, i) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
Else
Cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
End Sub


Sub Afficher_Lignes_Vides()
Application.ScreenUpdating = False
Range("G2:G50").Select
For Each Cell In Selection
Cpt = 0
For i = 0 To 7
If Cell.Offset(0, i) = "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
Else
Cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
End Sub

Pour d'exécuter le code en mode arrêt » ou Erreur d'exécution "9"; L'indice n'appartient pas à la sélection »???
Le code s'applique à la feuille4 dans ton classeur existe t elle !

Ensuite l'erreur à bloqué le visual pour le réinitialiser
Clic sur Alt et touche F11 ou clic droit sur l'onglet de feuille/visualiser le code
Execution/Réinitialiser

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Utilisateur anonyme
28 avril 2010 à 10:37
Bonjour

J'ai essayé de modifier ta macro pour l'adapter à mon tableau sans succès ...
En fait je voudrai qu'elle masque certaines lignes sous 2 conditions
Masque ligne 2 si G2= vide et A2= non vide. Je ne sais pas si c'est possible en sachant que la colonne A contient des cellules fusionner (10 cellules pour être exacte).

La Feuil4 existe bien, donc mon bouton devrait marcher ???? ?

Merci d'avance

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
28 avril 2010 à 10:45
Re,

les cellules fusionnées font mauvais ménage avec les formules ou code, faut voir.
Ensuite il est possible d'exécuter le code avec en A cellule non vide et en G cellule vide

si ton fichier ne contient pas de données confidentielles peux tu le mettre sur le forum que l'on voit ce qui cloche, soit sur un post soit en message privé en cliquant sur mon pseudo et coller le lien généré avec ce lien (clic/parcourir/créer le lien/autoriser l'accés)

https://www.cjoint.com/
0
Bonjour,

Je t'ai envoyé une version de mon fichier ; il ne contient que quelques données pour le test.
Avec des explications en essayant d'être claire...bon

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 28/04/2010 à 14:34
Re,

Supprime l'ancien code dans le modue et
Colle ces deux codes à la place.

Afficher_Détail pour masquer les cellules vides correspondantes au numéro de service sélectionné sur la feuille Récapitulatif

Affiche_Ligne_Vide affiche les lignes masquées correspondantes au numéro de service sélectionné sur la feuille Récapitulatif

Il est possible d'inclure dans le code le retour à la feuille Récapitulatif si tu le souhaites

Sub Afficher_Détail()
Dim x
Application.ScreenUpdating = False
Sheets("Récapitulatif").Range("C4").Select
x = ActiveCell.Value
Sheets("C").Select
With Worksheets("C").Range("A:A")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress).Offset(0, 7).Select
Range(ActiveCell.Offset(9, 0), ActiveCell).Select
Set MyPlage = Selection
For Each cell In MyPlage
If cell.Value = "" Then
cell.EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
End Sub



Sub Affiche_Ligne_Vide()
Dim x
Application.ScreenUpdating = False
Sheets("Récapitulatif").Range("C4").Select
x = ActiveCell.Value
Sheets("C").Select
With Worksheets("C").Range("A:A")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress).Offset(0, 7).Select
Range(ActiveCell.Offset(9, 0), ActiveCell).Select
Set MyPlage = Selection
For Each cell In MyPlage
If cell.Value = "" Then
cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Re,

Cette macro me permet d'afficher le détail, mais ne me masque rien.
J'avoue que je ne comprends pas du tout ta macro... je me suis contenter d'essayer de l'exécuter.

Mais pourrais tu la modifier afin qu'elle masque les lignes vides de la Feuil4 si la cellule de la colonne H est vide et la cellule correspondante de la colonne A non vide; et masquer aussi si la valeur de la cellule de la colonne A différent du service sélectionné sur le récapitulatif.

Merci

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
28 avril 2010 à 17:07
Re,

Je peux écrire un code qui s'appliquerait à l'ensemble des numéros de service ce qui multiplierait la longueur du code par huit
Ou plus simple on masque systématiquement toutes les lignes vides colonne H

Que veux tu dire par
Masquer aussi si la valeur de la cellule de la colonne A différent du service sélectionné sur le récapitulatif


Souhaites-tu masquer toutes les lignes sauf celle correspondantes au numéro du service sélectionné en C4

https://www.cjoint.com/?eCrgZosAUI
0
Utilisateur anonyme
28 avril 2010 à 17:33
Re,

Merci de m'aider !!

Oui, je voudrai que lorsque l'on clique sur « Afficher détail »
La Feuil4 s'affiche et si :
- A2 = C4 et G2 <> "vide" Afficher ligne 2
- A2 = C4 et G2 = "vide" Afficher ligne 2
- A2 <> C4 et G2 <> "vide" Masquer la ligne 2
- A2 <> C4 et G2 = "vide" Masquer la ligne 2
- A2 = "vide" et G2 <> "vide" Afficher ligne 2
- A2 = "vide" et G2 = "vide" Masquer ligne 2

Manuellement j'arrive à masquer même comme j'ai des cellules fusionnées en colonne A ; donc j'aimerai pouvoir automatiser cela.
J'espère avoir été claire.

Merci d'avance !!

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
28 avril 2010 à 17:54
Re,

On est loin des explications de départ, j'essaye de regarder dans la soirée,
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
28 avril 2010 à 21:10
Re,

Essayons d'être clair, dans tes explications

A2 = C4 et G2 <> "vide" Afficher ligne 2 que veux tu dire afficher 2 ligne en H et masquer les autres ou afficher la deuxième ligne ou encore afficher les lignes non vide + 2

A2 = C4 et G2 = "vide" Afficher ligne 2

prends le fichier que je t'ai retourné exemple feuille récapitulatif C4 = 13

Feuille C en A2 il y a 13 en G2 15/04/10 quelle ligne dois je masquer en H

idem pour A12 Récapitulatif = 11 A12=11 G12=15/04/10 que doit il y avoir en H

en A62 rien en G62 rien que doit il y avoir en H
0
Utilisateur anonyme
28 avril 2010 à 21:57
Bonsoir,

Mince là je suis gourée de lettre...

C'est :
- A2 = C4 et H2 <> "vide" Afficher ligne 2
- A2 = C4 et H2 = "vide" Afficher ligne 2
- A2 <> C4 et H2 <> "vide" Masquer la ligne 2
- A2 <> C4 et H2 = "vide" Masquer la ligne 2
- A2 = "vide" et H2 <> "vide" Afficher ligne 2
- A2 = "vide" et H2 = "vide" Masquer ligne 2

En fait tu vois je voudrai que
- les cellules vides de la colonne H n'apparaissent pas
- afficher le détail par service

Je voudrai obtenir le résultat affiché en C, si je sélectionne le service 13

Laure
0
Utilisateur anonyme
28 avril 2010 à 21:59
le lien

https://www.cjoint.com/?eCv6oDpZek

là j'ai fais les modifications que j'aimerai manuellement

Encore merci de m'aider Mike
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
28 avril 2010 à 23:01
Re,

Je commence à comprendre, si page Récapitulatif en C4 tu sélectionnes 13 par exemple tu veux que les cellules en A qui contiennent 13 s'affichent en ne conservant que les lignes non vie en H visible et on masque le reste du tableau
0
Utilisateur anonyme
28 avril 2010 à 23:07
oui c'est cela
0
Utilisateur anonyme
29 avril 2010 à 20:47
Bonjour,

Pourriez-vous m'aider s'il vous plaît.

Je voudrai à l'aide d'une macro masquer sous deux conditions les lignes d'un tableau sous Excel.
Sur le tableau de la feuille 1 si :
- A2 = C4 et H2 <> "vide" Afficher ligne 2
- A2 = C4 et H2 = "vide" Afficher ligne 2
- A2 <> C4 et H2 <> "vide" Masquer la ligne 2
- A2 <> C4 et H2 = "vide" Masquer la ligne 2
- A2 = "vide" et H2 <> "vide" Afficher ligne 2
- A2 = "vide" et H2 = "vide" Masquer ligne 2

En sachant que C4 est une valeur qui s'affichera sur une feuille Excel 2.

Merci d'avance.

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 29/04/2010 à 22:56
Re,

Je ne t'oublie pas, mais je donne des cours d'informatique qui me prend pas mal de temps.
regarde ce fichier qui répond a ton dernier post d'hier soir

https://www.cjoint.com/?eDw4kgBlwe

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Utilisateur anonyme
30 avril 2010 à 14:33
Bonjour Mike,

Merci pour ton aide, c'est exactement ce que je voulais, ça marche !

Encore une dernière chose s'il te plaît.

La macro ci-dessous masque les lignes si les cellules de la colonne H sont vides.
Elle les masque progressivement en commençant par la cellule H5, j'aimerai que l'exécution de la macro soit stoppée par une condition.

En fait dans le tableau de la Feuil C, les cellules de la colonne A sont fusionnées par bloc de 10. On a bloc 1 = A2 : A11; bloc 2 = A12 : A21; bloc 3 = A22 : A31; etc.

J'aimerai que l'exécution de la macro soit stoppée dès que la 1ère cellule d'un bloc soit vide.
Par exemple : bloc 2 = A12 : A21 si A12 = " " stopper l'exécution de la macro.

Sub Masquer ()
Application.ScreenUpdating = False
Range("H5:H100").Select
For Each Cell In Selection
Cpt = 0
For i = 0 To 7
If Cell.Offset(0, i) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
Else
Cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
End Sub

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
30 avril 2010 à 18:17
Re,

concrètement, cette macro devrait masquer toutes les lignes excepté les lignes non vide et la première ligne vide de chaque bloc exemple pour le service 13 reste affiché les cellules H2 à H6 non vide plus une ligne vide H7 et masquer de H8 à H11 et la même chose pour les autres blocs

bloc 11 reste affiché H12 non vide et H13 vide et masquer de H14 à H21 etc ...
0
Utilisateur anonyme
30 avril 2010 à 20:57
Bonsoir,

Je ne te comprends pas.

Si tu parles de la dernière macro que j'aimerai, non. Ce n'est pas cela que j'aimerai.
Je voudrai en fait adapter cette macro pour au tableau de la feuil C uniquement; elle me permettrai d'automatiser la mise en forme; en gros les utilisateurs pourront masquer toutes les lignes vides correspondant à un service, mais le reste du tableau non utilisé restera visible et utilisable.

Je comptais lier cette à un bouton sur la Feuil C.

Elsie
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
30 avril 2010 à 22:38
Re,

Oui j'ai bien compris, la macro de ton avant dernier post, elle doit masquer uniquement les lignes vides d'un service exemple le 13 et laisser le reste du tableau visible (ligne vide et non vide)

c'est cela
0
Utilisateur anonyme
30 avril 2010 à 22:43
Re,

Oui, si le service 13 est le dernier renseigné en colonne A comme dans le fichier Laure_2
0
Utilisateur anonyme
30 avril 2010 à 22:49
dans ce fichier dans le Feuil C, j'ai masqué manuellement les cellules pour te montrer le résultat que j'aimerai obtenir

https://www.cjoint.com/?eEwWzQ13fI
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
30 avril 2010 à 23:20
Re,


Comme cela

Sub Masquer ()
Application.ScreenUpdating = False
For i = 300 To 2 Step -1
If Range("H" & i) = "" Then
Range("H" & i).EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
End Sub
0
Re,

cette macro me fait la même chose que celle ci :

Sub Masquer ()
Application.ScreenUpdating = False
Range("H5:H100").Select
For Each Cell In Selection
Cpt = 0
For i = 0 To 7
If Cell.Offset(0, i) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
Else
Cell.EntireRow.Hidden = False
End If
Next
Application.ScreenUpdating = True
End Sub

c'est bien, mais je voudrai que son exécution se stope dès que A2 ou A12...= " "
Je ne sais pas s'il faut y ajouter un truc du genre

Sub Masquer ()
Application.ScreenUpdating = False
For i = 2 To 100 Step 10
If Range("A" & i) = "" Then


For i = 300 To 2 Step -1
If Range("H" & i) = "" Then
Range("H" & i).EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
Next
End Sub
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
1 mai 2010 à 00:00
Re,

Alors comme cela

Sub Masquer ()
Dim i As Integer
Application.ScreenUpdating = False
[A300].End(xlUp).Offset(0, 7).Select
Range(ActiveCell.Offset(9, 0), [H2]).Select
Set MyPlage = Selection
For Each cell In MyPlage
If cell.Value = "" Then
cell.EntireRow.Hidden = True
End If
Next
[H2].Select
Application.ScreenUpdating = True
End Sub
0
Utilisateur anonyme
1 mai 2010 à 10:10
Bonjour Mike

T'es vraiment super sympa !
Merci bcp pour ton aide !

ça marche c'est super!

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
1 mai 2010 à 10:46
RE,

Hier soir je t'ai posté ce code qui apparemment n'a pas été pris en compte

Sub Masquer ()
Dim i As Integer
Application.ScreenUpdating = False
[A300].End(xlUp).Offset(0, 7).Select
Range(ActiveCell.Offset(9, 0), [H2]).Select
Set MyPlage = Selection
For Each cell In MyPlage
If cell.Value = "" Then
cell.EntireRow.Hidden = True
End If
Next
[H2].Select
Application.ScreenUpdating = True
End Sub
0
Utilisateur anonyme
1 mai 2010 à 11:06
Re,

Si si elle est en haut j'y ai mis un +1.
elle marche c'est parfait. là mon pb est résolue.

Merci encore.

Dis moi est ce que ça serait vraiment trop de chez trop si je te demandais de répondre à une autre de mes questions sur l'envoi de mail automatique à partir d'excel via outlook.....

Laure
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 1/05/2010 à 22:33
Re,

C'est le genre de macro pas très souvent utilisée, je vais me replonger sur le problème après le week-end.

Pour revenir à ton problème, j'ai vu que tu avais plusieurs feuille A, B et C
si tu dois les piloter depuis la feuille "Récapitulatif" il te suffit d'ajouter une ligne comme pour les services si tu veux je t'envoie un fichier, également même pour la liste déroulante en C4 comme elle est assez courte, tu peux effacer les données L3 à L10 et saisir directement les valeur dans source (Données/Validation/etc...)
à la place de
=$L$3:$L$10
tu saisis
11;13;15;17;19;21;23;25

Pour terminer, mets le statut de cette discussion en résolu, et ouvre une discussion pour l'envoi de mail automatique à partir d'Excel via Outlook je la suivrais
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Utilisateur anonyme
1 mai 2010 à 16:27
Salut,

Oui je veux bien un fichier.
Le statut de cette discussion devrait déjà être en résolu ...bon je re essaye.

Pour ma 2nd question j'ai ouvert une discussion le 29/04 elle a pour titre : mail automatique à partir d'excel.

Merci

Laure
0