chris6999
XLDnaute Impliqué
Bonjour
J'ai un problème avec une macro qui a pour but de passer uniquement sur les lignes filtrées afin de mettre à jour les données de certaines colonnes.
Cela ne fonctionne pas le code passe non seulement sur les lignes filtrées mais continue sur les lignes hors filtre jusqu'à la fin de ma plage (ici ligne 1000)
Mon code est le suivant
'passe sur les lignes filtrées pour modification du stade Export réalisé
Application.EnableEvents = False
Dim MaFeuille As Worksheet
Set MaFeuille = Sheets("Liste")
Columns("Af:AG").EntireColumn.Hidden = True
'PLAGE définie A8:AG5000 mais uniquement cellules visibles après filtre
Dim MaPlage As Range
' A changer -----------------------
Set MaPlage = Range("A8:AG5000").SpecialCells(xlCellTypeVisible).Rows
'je compare les cellules de la colonne D
Dim Ligne As Range
For Each Ligne In MaPlage.Rows
'positionne export réalisé colonne 31 AD si A non vide
'positionne date colonne 32 AE si A non vide
'positionne USER colonne 33 AF si A non vide
If Ligne.Cells(1) <> "" Then
Ligne.Cells(30) = "Export réalisé"
Ligne.Cells(32) = Date
Ligne.Cells(33) = Application.UserName
End If
Next
Application.EnableEvents = True
Je ne vois pas trop où se situe le pb mais je comprends bien qu'il y a un truc qui cloche.
Quelqu'un aurait-il une idée de ce que je pourrais modifier pour arriver à mes fins?
Merci d'avance pour votre aide
Bonne fin de soirée
J'ai un problème avec une macro qui a pour but de passer uniquement sur les lignes filtrées afin de mettre à jour les données de certaines colonnes.
Cela ne fonctionne pas le code passe non seulement sur les lignes filtrées mais continue sur les lignes hors filtre jusqu'à la fin de ma plage (ici ligne 1000)
Mon code est le suivant
'passe sur les lignes filtrées pour modification du stade Export réalisé
Application.EnableEvents = False
Dim MaFeuille As Worksheet
Set MaFeuille = Sheets("Liste")
Columns("Af:AG").EntireColumn.Hidden = True
'PLAGE définie A8:AG5000 mais uniquement cellules visibles après filtre
Dim MaPlage As Range
' A changer -----------------------
Set MaPlage = Range("A8:AG5000").SpecialCells(xlCellTypeVisible).Rows
'je compare les cellules de la colonne D
Dim Ligne As Range
For Each Ligne In MaPlage.Rows
'positionne export réalisé colonne 31 AD si A non vide
'positionne date colonne 32 AE si A non vide
'positionne USER colonne 33 AF si A non vide
If Ligne.Cells(1) <> "" Then
Ligne.Cells(30) = "Export réalisé"
Ligne.Cells(32) = Date
Ligne.Cells(33) = Application.UserName
End If
Next
Application.EnableEvents = True
Je ne vois pas trop où se situe le pb mais je comprends bien qu'il y a un truc qui cloche.
Quelqu'un aurait-il une idée de ce que je pourrais modifier pour arriver à mes fins?
Merci d'avance pour votre aide
Bonne fin de soirée