Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
usOzlqaBGHA.3408@TK2MSFTNGP12.phx.gbl...
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
usOzlqaBGHA.3408@TK2MSFTNGP12.phx.gbl...
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
usOzlqaBGHA.3408@TK2MSFTNGP12.phx.gbl...
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1 &
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" a écrit dans le message de news:
%231Cd$
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" a écrit dans le message de news:Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
%231Cd$BUEGHA.3000@TK2MSFTNGP14.phx.gbl...
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
eTLVuJcBGHA.2920@tk2msftngp13.phx.gbl...
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
usOzlqaBGHA.3408@TK2MSFTNGP12.phx.gbl...
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" a écrit dans le message de news:
%231Cd$
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" a écrit dans le message de news:Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.", Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Superrrrr!
Un gros merci!
Tu vas pouvoir travailler en plein temps pour moi!
Ciao!
"michdenis" a écrit dans le message de news:Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" a écrit dans le message de news:
%231Cd$
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" a écrit dans le message de news:Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.",
Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex =
4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Superrrrr!
Un gros merci!
Tu vas pouvoir travailler en plein temps pour moi!
Ciao!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
eqJoXDWEGHA.532@TK2MSFTNGP15.phx.gbl...
Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
%231Cd$BUEGHA.3000@TK2MSFTNGP14.phx.gbl...
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
eTLVuJcBGHA.2920@tk2msftngp13.phx.gbl...
Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" <hahaha@videotron.ca> a écrit dans le message de news:
usOzlqaBGHA.3408@TK2MSFTNGP12.phx.gbl...
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.",
Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex =
4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________
Superrrrr!
Un gros merci!
Tu vas pouvoir travailler en plein temps pour moi!
Ciao!
"michdenis" a écrit dans le message de news:Bonjour Érico,
Et ceci :
'--------------------------------
Sub Test()
Dim Rg As Range
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Else
MsgBox "La ligne en dessous de votre " & _
"n'est pas masquée.", vbOKOnly & _
vbInformation, "Terminée"
End If
End If
Set Rg = Nothing
End Sub
'--------------------------------
Salutations!
"Érico" a écrit dans le message de news:
%231Cd$
Salut Mich!
Elle fonctionne bien, sauf qu'elle démasque tout les lignes qui sont
masquées.
Est-ce possible une ligne à la fois seulement?
Merci pour ton aide.
Érico
"michdenis" a écrit dans le message de news:Bonjour Érico,
Je ne suis pas sur d'avoir compris tous les détails de ce que tu veux,
essaie ceci :
Cette macro va afficher toutes les lignes en dessous de la cellule
sélectionnée.
Dès qu'elle rencontre une ligne qui est non masquée, elle s'arrête à
cette
ligne.
'--------------------------------------
Sub Test()
Dim Rg As Range
Do
On Error Resume Next
Set Rg = Application.InputBox(prompt:="Sélectionner" & _
"une cellule de la ligne juste au dessus de la" & _
"ligne à afficher.", Title:="Selection", Type:=8)
If Err = 0 Then
Application.ScreenUpdating = False
Do
If Not Rg Is Nothing Then
If Rg.Offset(1).EntireRow.Hidden = True Then
Rg.Offset(1).EntireRow.Hidden = False
Set Rg = Rg.Offset(1)
Else
Ok = True
Rg(1, 1).Select
Application.ScreenUpdating = True
MsgBox "Les lignes en dessous de votre " & _
"sélection ne sont plus masquées.", vbOKOnly & _
vbInformation, "Terminée"
Exit Do
End If
End If
Loop
Else
Err = 0
Ok = True
End If
Loop Until Ok = True
End Sub
'--------------------------------------
Salutations!
"Érico" a écrit dans le message de news:
Bonjour à tous!
J'aimerais avoir une macro suivante:
De démasquer une ligne et s'il n'y a plus de lignes, d'afficher un
message
d'erreur qu'il n'y plus de lignes masquées.
Avec un bouton, la macro exécute:
- Bienvenue à la macro!
- Apparait une boite dialogue qui demande de me placer au dessus de la
ligne
à afficher
- Il fait afficher la ligne
- s'il n'y avait pas de ligne masqué, d'afficher "il n'y a plus de ligne
masqué"
- de me placer sur la nouvelle ligne
Ma macro actuelle que j'ai, elle créé des nouvelles lignes et copie des
formules existantes des autres lignes et la voici:
Merci de votre collaboration.
Érico de Montréal
Vive les Français!
______________________________________________________________
Sub AjouterDesLignes()
' vbInformation, "Ouverture"
MsgBox " Salut Paul! "
Dim A As Variant, B As Range, C As Integer
A = Application.InputBox(Prompt:="Combien de lignes faut-il insérer?",
Type:=1)
MsgBox " La ligne ou les lignes seront insérées par dessus. "
If A = "Faux" Then Exit Sub
If A <= 0 Then Exit Sub
'-----------------------
Rem rajouter
ActiveSheet.Protect password:="thepass", userinterfaceonly:=True
'-----------------------
On Error Resume Next
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.",
Type:=8)
If Err <> 0 Then
Err = 0
Exit Sub
Else
For C = 1 To A
B.EntireRow.Insert
Range("c" & B.Row & ":" & "d" & B.Row).Copy Range("c" & B.Row - 1
&
":" & "d" & B.Row - 1)
Range("h" & B.Row & ":" & "i" & B.Row).Copy Range("h" & B.Row - 1 &
":" & "i" & B.Row - 1)
Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex = 12
'Range("A" & B.Row - 1 & ":j" & B.Row - 1).Interior.ColorIndex =
4
'****rouge***
Next
End If
Range("A7:A8").Select
Selection.AutoFill Destination:=Range("A7:A60")
Range("A7:A60").Select
End Sub
______________________________________________________