Bonjour à tous,
Mon problème est le suivant, j'ai plusieurs procédures tels que supprimer les lignes vides, les colonnes vides et les lignes dans lesquelles se trouvent certaines valeurs dans la colonne 1 du fichier.
Cependant, je n'arrive pas à unifier ces procédures en une seule procédure, ce qui me permettrait d'avoir une seule macro.
Voici le programme:
Sub Mise_en_forme()
Application.ScreenUpdating = False '
Dim i As Long
For i = 1 To [a65536].End(xlUp).Row
If Cells(i, 1) Like "*05.02.2008*" Then
Cells(i, 1).EntireRow.Delete
End If
Dim i as integer
For i = Range("A65536").End(xlUp).Row To 1 Step -1
If Cells(i, 1).Value = "" Then Rows(i).Delete
End If
For i = 256 To 1 Step -1
If Cells(65536, i).End(xlUp).Row = 1 Then Cells(1, i).EntireColumn.Delete
End If
Next i
End Sub
Je pense que ma manière d'unifier ces trois procédures en une seule est mauvaise.
De plus, j'ai un petit problème pour une autre condition. J'aimerais faire une macro qui selectionne toutes les valeurs de la colonne 1 commencant par la lette 2 et qui supprime ces lignes.
J'ai trouvé çà mais çà marche que après avoir exécuté dix fois la macro:
Sub Selection_Supprime()
Application.ScreenUpdating = False '
Dim i As Long
For i = 1 To [a65536].End(xlUp).Row
If Cells(i, 1) Like "*2*" Then
Cells(i, 1).EntireRow.Delete
Next i
End Sub
Mon problème est le suivant, j'ai plusieurs procédures tels que supprimer les lignes vides, les colonnes vides et les lignes dans lesquelles se trouvent certaines valeurs dans la colonne 1 du fichier.
Cependant, je n'arrive pas à unifier ces procédures en une seule procédure, ce qui me permettrait d'avoir une seule macro.
Voici le programme:
Sub Mise_en_forme()
Application.ScreenUpdating = False '
Dim i As Long
For i = 1 To [a65536].End(xlUp).Row
If Cells(i, 1) Like "*05.02.2008*" Then
Cells(i, 1).EntireRow.Delete
End If
Dim i as integer
For i = Range("A65536").End(xlUp).Row To 1 Step -1
If Cells(i, 1).Value = "" Then Rows(i).Delete
End If
For i = 256 To 1 Step -1
If Cells(65536, i).End(xlUp).Row = 1 Then Cells(1, i).EntireColumn.Delete
End If
Next i
End Sub
Je pense que ma manière d'unifier ces trois procédures en une seule est mauvaise.
De plus, j'ai un petit problème pour une autre condition. J'aimerais faire une macro qui selectionne toutes les valeurs de la colonne 1 commencant par la lette 2 et qui supprime ces lignes.
J'ai trouvé çà mais çà marche que après avoir exécuté dix fois la macro:
Sub Selection_Supprime()
Application.ScreenUpdating = False '
Dim i As Long
For i = 1 To [a65536].End(xlUp).Row
If Cells(i, 1) Like "*2*" Then
Cells(i, 1).EntireRow.Delete
Next i
End Sub