Bonjour à tous,
J'aurai besoin d'un petit coup de main pour optimiser de petits codes mais long à l'éxécution, le sujet:
1 code pour afficher toutes les colonnes masquées
1 code pour afficher toutes les lignes masquées
Après je suis d'accord j'ai été un peu éxessif sur le nombre de lignes et colonnes masquées
Pour les colonnes ça fonctionne mais environ 15 secondes
Pour les lignes arrivé un moment ça ne répond plus du tout
Donc est ce que les codes sont bon ? , ou à optimiser ?
J'ai pensé aussi ajouter une barre de progression mais 😩😩
Je vous joint un petit modèle
Merci de vos lumières
Nicolas
	
	
	
	
	
		
Edit: Rien que pour compter le nombre de lignes masquées, il faut environ 5 secondes
	
		
			
		
		
	
				
			J'aurai besoin d'un petit coup de main pour optimiser de petits codes mais long à l'éxécution, le sujet:
1 code pour afficher toutes les colonnes masquées
1 code pour afficher toutes les lignes masquées
Après je suis d'accord j'ai été un peu éxessif sur le nombre de lignes et colonnes masquées
Pour les colonnes ça fonctionne mais environ 15 secondes
Pour les lignes arrivé un moment ça ne répond plus du tout
Donc est ce que les codes sont bon ? , ou à optimiser ?
J'ai pensé aussi ajouter une barre de progression mais 😩😩
Je vous joint un petit modèle
Merci de vos lumières
Nicolas
		VB:
	
	
	Private Sub CommandButton1_Click()
    Dim ws As Worksheet
    Dim col As Range
    Set ws = ActiveSheet
    nb = 0
    For Each col In ws.Columns
        If col.Hidden = True Then
            nb = nb + 1
        End If
    Next col
    MsgBox nb
End Sub
Private Sub CommandButton2_Click()
    Dim ws As Worksheet
    Dim col As Range
    Set ws = ActiveSheet
    For Each col In ws.Columns
        If col.Hidden = True Then
            col.Hidden = False
        End If
    Next col
End Sub
Private Sub CommandButton3_Click()
    Dim ws As Worksheet
    Dim lig As Range
    Set ws = ActiveSheet
    nb = 0
    For Each lig In ws.Rows
        If lig.Hidden = True Then
            nb = nb + 1
        End If
    Next lig
    MsgBox nb
End Sub
Private Sub CommandButton4_Click()
    Dim ws As Worksheet
    Dim lig As Range
    Set ws = ActiveSheet
    For Each lig In ws.Rows
        If lig.Hidden = True Then
            lig.Hidden = False
        End If
    Next lig
End Sub
	Edit: Rien que pour compter le nombre de lignes masquées, il faut environ 5 secondes
Pièces jointes
			
				Dernière édition: