Lignes masquées

Bonjour,

J'ai un tableau avec plusieurs champs (Nom, Prénom, date de naissance....) dans une feuille1 excel

J'ai une autre feuille2

J'ai masqué les lignes de 1 jusqu'à 107.

En fonction d'une condition, je rempli la feuille2 avec des informations contenues dans la feuille1.

Je voudrais qu'à chaque ligne enregistrée, cette ligne ne soit plus masquée.

J'ai essayé avec :

Rows(i).select

selection.entireRow.hidden=false

i étant une variable

Je n'obtiens rien

Je ne sais pas comment procéder

Merci pour l'aide que vous pourrez m'apporte

Bonjour Tintin1402

Tout dépend comment tes lignes sont maquées ?

S'il s'agit d'un filtre ta méthode ne fonctionnera pas il faut mettre à jour ton filtre

Au passage, tu peux optimiser ton code par

Rows(i).Hidden=False

A+

Bonjour

Je me permettrai aussi d'ajouter le nom de la feuille où se trouve les lignes à afficher

thisworkbook.sheets("NomDeLaFeuille").Rows(i).Hidden=False

Tiens nous au courant

à bientôt

merci de m'aider

J'ai masqué les lignes avec la souris.J'ai sélectionné les 107 premières lignes et j'ai cliqué masqué.

J'ai donc 107 lignes de masquées.

J'ai à l'affichage les lignes après 107

J'ai mis la ligne : thisworkbook.sheets("NomDeLaFeuille").Rows(i).Hidden=False

j'ai fait une boucle :

For i=3 to NbEnreg

thisworkbook.sheets("inscriptions").Rows(i).Hidden=False

Next i

NbEnreg est le nombre d'enregistrement donc nombre de lignes.

çà ne fonctionne pas

Pourrais tu nous passer une copie de ton fichier s'il tep lait

15fichier-scbc.zip (10.06 Ko)

Voici

Je te joins le fichier que je charge sur mon programme et qui permet de faire les inscriptions.

Le programme qui pause des problèmes est dans le module 4

Si je laisse quelques lignes visibles, le programme se déroule normalement.

Il y a des problèmes quand je masque les lignes.

Encore merci

Option Explicit

Sub enregistrement_inscriptions()

If H = 0 Then
MsgBox "Le fichier des inscriptions n'a pas été chargé", vbInformation, "fichier des inscriptions"
Exit Sub
End If
Application.ScreenUpdating = False
Sheets("Submissions").Select

Dim NbEnreg As Integer
Dim cel1 As Range
Dim prénom As String
Dim Nom As String
Dim Nomprénom As String
Dim datenaissance As Date
Dim catégories As String
Dim adresse As String
Dim ville As String
Dim codepostal As String
Dim telfixe As String
Dim telportable As String
Dim mail As String
Dim adhésion As String
Dim licence As String
Dim mra As String
Dim cotisation As Integer
Dim modepaiement As String
Dim assurance As String
Dim soussigné As String
Dim qualité As String
Dim autorisation As String
Dim nomenfant As String
Dim prénomenfant As String
Dim fichier As String
Dim i As Integer
Dim z As Integer
i = 1

Set cel1 = Range("A1")
NbEnreg = Range("A1").End(xlDown).Row

Sheets("inscriptions").Select
Dim NbEnreg2 As Integer
Dim Cel2 As Range
Dim j As Integer
Dim k As Integer
Dim L As Integer
j = 1
k = 1

Sheets("Submissions").Select

For i = 1 To NbEnreg - 1

prénom = Range("A1").Offset(i, 2)
Nom = Range("A1").Offset(i, 3)
datenaissance = Range("A1").Offset(i, 4)
catégories = Range("A1").Offset(i, 5)
adresse = Range("A1").Offset(i, 6)
ville = Range("A1").Offset(i, 7)
codepostal = Range("A1").Offset(i, 8)
telfixe = Range("A1").Offset(i, 9)
telportable = Range("A1").Offset(i, 10)
mail = Range("A1").Offset(i, 11)
adhésion = Range("A1").Offset(i, 12)
licence = Range("A1").Offset(i, 13)
mra = Range("A1").Offset(i, 14)
cotisation = Range("A1").Offset(i, 15)
modepaiement = Range("A1").Offset(i, 16)
assurance = Range("A1").Offset(i, 17)
soussigné = Range("A1").Offset(i, 19)
qualité = Range("A1").Offset(i, 20)
autorisation = Range("A1").Offset(i, 21)
nomenfant = Range("A1").Offset(i, 22)
prénomenfant = Range("A1").Offset(i, 23)
fichier = Range("A1").Offset(i, 25)

Worksheets("inscriptions").Select
Set Cel2 = Range("A1")
Nomprénom = Nom + prénom
If Range("A1").Offset(1, 1) = "" Then

    Range("A1").Offset(1, 0) = prénom
    Range("A1").Offset(1, 1) = Nom
    Range("A1").Offset(1, 2) = datenaissance
    Range("A1").Offset(1, 3) = catégories
    Range("A1").Offset(1, 4) = adresse
    Range("A1").Offset(1, 5) = ville
    Range("A1").Offset(1, 6) = codepostal
    Range("A1").Offset(1, 7) = telfixe
    Range("A1").Offset(1, 8) = telportable
    Range("A1").Offset(1, 9) = mail
    Range("A1").Offset(1, 10) = adhésion
    Range("A1").Offset(1, 11) = licence
    Range("A1").Offset(1, 12) = mra
    Range("A1").Offset(1, 13) = cotisation
    Range("A1").Offset(1, 14) = modepaiement
    Range("A1").Offset(1, 15) = assurance
    Range("A1").Offset(1, 17) = soussigné
    Range("A1").Offset(1, 18) = qualité
    Range("A1").Offset(1, 19) = autorisation
    Range("A1").Offset(1, 20) = nomenfant
    Range("A1").Offset(1, 21) = prénomenfant
    Range("A1").Offset(1, 23) = fichier

End If

NbEnreg2 = Range("A1").End(xlDown).Row
L = 0

For j = 1 To NbEnreg2 - 1

If Worksheets("inscriptions").Range("A1").Offset(j, 2) = datenaissance Then
L = 1
Exit For
End If
Next j

If L = 0 Then

k = NbEnreg2

Range("A1").Offset(k, 0) = prénom
Range("A1").Offset(k, 1) = Nom

Range("A1").Offset(k, 2) = datenaissance
Range("A1").Offset(k, 3) = catégories
Range("A1").Offset(k, 4) = adresse
Range("A1").Offset(k, 5) = ville
Range("A1").Offset(k, 6) = codepostal
Range("A1").Offset(k, 7) = telfixe
Range("A1").Offset(k, 8) = telportable
Range("A1").Offset(k, 9) = mail
Range("A1").Offset(k, 10) = adhésion
Range("A1").Offset(k, 11) = licence
Range("A1").Offset(k, 12) = mra
Range("A1").Offset(k, 13) = cotisation
Range("A1").Offset(k, 14) = modepaiement
Range("A1").Offset(k, 15) = assurance
Range("A1").Offset(k, 17) = soussigné
Range("A1").Offset(k, 18) = qualité
Range("A1").Offset(k, 19) = autorisation
Range("A1").Offset(k, 20) = nomenfant
Range("A1").Offset(k, 21) = prénomenfant
Range("A1").Offset(k, 23) = fichier

End If

Worksheets("Submissions").Select

Next i

Worksheets("inscriptions").Select

Dim NbEnreg4 As Integer
Dim u As Integer
Dim v As Integer
Dim w As Integer
v = 0
u = 1
NbEnreg4 = Range("A1").End(xlDown).Row

z = 2 'changement ici

For z = 2 To NbEnreg4 ' ici
ThisWorkbook.Sheets("inscriptions").Rows(z).Hidden = False
Next z
' ajout de cette linge ci dessous

For z = NbEnreg4 To 106
ThisWorkbook.Sheets("inscriptions").Rows(z).Hidden = True
Next z

For u = 1 To NbEnreg4 - 1
If Range("A1").Offset(u, 1) <> "" Then
v = v + 1

End If

Next u
Range("N107") = v

Application.ScreenUpdating = True
End Sub

Dis moi si ça marche ou pas??

Merci pour ton aide

çà ne fonctionne pas

Si je ne masque pas la 2ème ligne correspondant au 1er enregistrement

* J'ai alors toutes les lignes masquées( y compris la 2ème)

* J'ai seulement 2 lignes sur 6

* si je clique une 2ème fois sur mon bouton enregistrement j(ai 5 lignes enregistréesz qui apparaissent

quand le clique une nouvelle fois, j'ai une ligne qui se masque et ainsi de suite jusqu'à qu'elles soient toutes masquées, puis si je clique à nouveau j'ai plusieurs fois la même ligne.

si je masque la première ligne , j'ai un débogage

NbEnreg2=Range("A1").End(xldown).row

Erreur execution"6"

Dépassement de capacité.

Apparemment il ne tient pas compte de la ligne 2 masquées.

Voilà

Rechercher des sujets similaires à "lignes masquees"