Ouvrir plusieurs fichiers d'un dossier et y supp. des lignes
moseca
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je voudrais une macro qui ouvrent chaque fichier d'un dossier et supprime les ligne selon une condition (valeur de la colonne A = X) puis les referme. J'ai une macro qui ouvre les fichiers mais ne fait aucune action, les lettre X ne sont pas enlevées.
Voici la macro :
Sub Suppression_dones_boucles()
'
Dim ClasseurSource As Workbook
Set ClasseurSource = ThisWorkbook
Dim N As Name
Dim i As Long
Dim chemin As String
chemin = "C:\Users\*.*"
ChDir chemin
RetVal = Application.Dialogs(xlDialogOpen).Show(chemin & "\*.*")
'ouverture de la boite de dialogue
'Ce bout de code sert à montrer à la macro le chemin du dossier des fichiers
If RetVal = True Then Exit Sub 'Pressez "annuler" si le chemin est CORRECT
' Turn off screen updating.
Application.ScreenUpdating = False
'Y a t'il des fichiers dans le répertoire ?
If Dir(chemintypedonnees) <> "" Then
ClasseurSource.Activate
'Gérer le répertoire de fichiers excel
fichier = Dir(chemintypedonnees)
Do While fichier <> ""
Set wbsource = Workbooks.Open(fichier) 'open the file
'activation de la première feuille du fichier excel. Cela peut etre modifié
Sheets(1).Activate
Worksheets(1).Activate
End Sub
For i = 20 To 2 Step -1
If Cells(i, 1).Value = "X" Then
Rows(i).EntireRow.Delete
End If
Next j
Next i
Application.Calculation = xlCalculationAutomatic
'***************************************************
wbsource.Close True 'close the current source file and save
fichier = Dir 'go to next file in the directory
Loop 'restart the process with next file
Else
Application.ScreenUpdating = True
MsgBox "Aucun fichier présent!!!"
Exit Sub
End If
Application.ScreenUpdating = True
Je voudrais une macro qui ouvrent chaque fichier d'un dossier et supprime les ligne selon une condition (valeur de la colonne A = X) puis les referme. J'ai une macro qui ouvre les fichiers mais ne fait aucune action, les lettre X ne sont pas enlevées.
Voici la macro :
Sub Suppression_dones_boucles()
'
Dim ClasseurSource As Workbook
Set ClasseurSource = ThisWorkbook
Dim N As Name
Dim i As Long
Dim chemin As String
chemin = "C:\Users\*.*"
ChDir chemin
RetVal = Application.Dialogs(xlDialogOpen).Show(chemin & "\*.*")
'ouverture de la boite de dialogue
'Ce bout de code sert à montrer à la macro le chemin du dossier des fichiers
If RetVal = True Then Exit Sub 'Pressez "annuler" si le chemin est CORRECT
' Turn off screen updating.
Application.ScreenUpdating = False
'Y a t'il des fichiers dans le répertoire ?
If Dir(chemintypedonnees) <> "" Then
ClasseurSource.Activate
'Gérer le répertoire de fichiers excel
fichier = Dir(chemintypedonnees)
Do While fichier <> ""
Set wbsource = Workbooks.Open(fichier) 'open the file
'activation de la première feuille du fichier excel. Cela peut etre modifié
Sheets(1).Activate
Worksheets(1).Activate
End Sub
For i = 20 To 2 Step -1
If Cells(i, 1).Value = "X" Then
Rows(i).EntireRow.Delete
End If
Next j
Next i
Application.Calculation = xlCalculationAutomatic
'***************************************************
wbsource.Close True 'close the current source file and save
fichier = Dir 'go to next file in the directory
Loop 'restart the process with next file
Else
Application.ScreenUpdating = True
MsgBox "Aucun fichier présent!!!"
Exit Sub
End If
Application.ScreenUpdating = True
A voir également:
- Ouvrir plusieurs fichiers d'un dossier et y supp. des lignes
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Comment ouvrir un fichier dat - Guide
- Comment ouvrir un fichier docx ? - Guide
- Comment ouvrir un fichier 7z - Guide
3 réponses
Bonjour,
Il me semble que l'instruction [End Sub] n'est pas au bonne emdroit:
Il me semble que l'instruction [End Sub] n'est pas au bonne emdroit:
Worksheets(1).Activate End Sub For i = 20 To 2 Step -1 If Cells(i, 1).Value = "X" Then
Bonjour,
C'est une erreur de ma part, lorsque je copiais la macro, mais ce n'est pas ça le problème.
En mettant le End Sub à la toute fin de la macro, le problème demeure.
Merci.
C'est une erreur de ma part, lorsque je copiais la macro, mais ce n'est pas ça le problème.
En mettant le End Sub à la toute fin de la macro, le problème demeure.
Merci.
Bonjour,
Ou avez-vous mis le End Sub ?
Merci de poster le code complet en utilisant la balise ; exemple
Ou avez-vous mis le End Sub ?
Merci de poster le code complet en utilisant la balise ; exemple
Sub Suppression_dones_boucles() Dim ClasseurSource As Workbook Set ClasseurSource = ThisWorkbook Dim N As Name Dim i As Long Dim chemin As String chemin = "C:\Users\*.*" ChDir chemin RetVal = Application.Dialogs(xlDialogOpen).Show(chemin & "\*.*") 'ouverture de la boite de dialogue 'Ce bout de code sert à montrer à la macro le chemin du dossier des fichiers If RetVal = True Then Exit Sub 'Pressez "annuler" si le chemin est CORRECT ' Turn off screen updating. Application.ScreenUpdating = False 'Y a t'il des fichiers dans le répertoire ?