fonction remplacer pour un dossier et ses sous dossiers

Le
sdellaux
Bonjour,

Pourrait on m'aider avec la fonction « Remplacer » ?

Dans un document excel je sais maîtriser pour un ensemble de cellules
ou un document entier la fonction "remplacer" un texte par un autre.

Par contre peut on m'aider pour cette même fonction, pour un ensemble
de dossiers et sous dossiers et sous-sous dossiers ? je m'explique :

Je crée un dossier de base appelé A

A l'interieur de ce dossier je crée par exemple x dossiers intitulés :
A1-A2-A3-A4 etc.

Dans chacun de ces sous dossiers je crée :

En A1 les sous sous dossiers A1/1-A1/2 etc..
En A2 les sous sous dossiers A2/1-A2/2 etc
En A3 les sous sous dossiers A3/1-A3/2 etc
Et ainsi de suite à l'infini.

Le fichier de base ainsi établit je désire faire un copier coller pour
créer un nouveau dossier intitulé par exemple B.

Comment faire pour remplacer le texte A par le texte B dans tout
l'ensemble du dossier ? ( dossier - sous dossier - sous sous dossier
etc) en une seule opération ?

Merci de votre aide par avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel
Le #4319941
Bonjour.
Tout d'abord, la macro suivante ne fonctionnera pas avec XL2007.
Dans .LookIn, indique le chemin du dossier principal.
Dans la ligne :
sh.Cells.Replace "toto", "titi"
"toto" indique la chaîne recherchée et "titi" la chaîne substituée.

Sub test()
Dim Fichier As String, sh As Worksheet
With Application.FileSearch
.NewSearch
.LookIn = "e:donneesdanielmpfe"
.Filename = "*.xls"
.FileType = msoFileTypeExcelWorkbooks
.SearchSubFolders = True
If .Execute > 0 Then
For i = 1 To .FoundFiles(.FoundFiles.Count)
Workbooks.Open .FoundFiles(i)
For Each sh In ActiveWorkbook.Sheets
sh.Cells.Replace "toto", "titi"
Next sh
ActiveWorkbook.Close True
Next i
End If
End With
End Sub

Enfin, la macro n'a pas été testée.
Cordialement.
Daniel
"sdellaux"
Bonjour,

Pourrait on m'aider avec la fonction « Remplacer » ?

Dans un document excel je sais maîtriser pour un ensemble de cellules
ou un document entier la fonction "remplacer" un texte par un autre.

Par contre peut on m'aider pour cette même fonction, pour un ensemble
de dossiers et sous dossiers et sous-sous dossiers ? je m'explique :

Je crée un dossier de base appelé A

A l'interieur de ce dossier je crée par exemple x dossiers intitulés :
A1-A2-A3-A4 etc....

Dans chacun de ces sous dossiers je crée :

En A1 les sous sous dossiers A1/1-A1/2 etc..
En A2 les sous sous dossiers A2/1-A2/2 etc...
En A3 les sous sous dossiers A3/1-A3/2 etc...
Et ainsi de suite à l'infini....

Le fichier de base ainsi établit je désire faire un copier coller pour
créer un nouveau dossier intitulé par exemple B.

Comment faire pour remplacer le texte A par le texte B dans tout
l'ensemble du dossier ? ( dossier - sous dossier - sous sous dossier
etc...) en une seule opération ?

Merci de votre aide par avance
sdellaux
Le #4260231
On 25 mar, 16:23, "Daniel"
Bonjour.
Tout d'abord, la macro suivante ne fonctionnera pas avec XL2007.
Dans .LookIn, indique le chemin du dossier principal.
Dans la ligne :
sh.Cells.Replace "toto", "titi"
"toto" indique la chaîne recherchée et "titi" la chaîne substitué e.

Sub test()
Dim Fichier As String, sh As Worksheet
With Application.FileSearch
.NewSearch
.LookIn = "e:donneesdanielmpfe"
.Filename = "*.xls"
.FileType = msoFileTypeExcelWorkbooks
.SearchSubFolders = True
If .Execute > 0 Then
For i = 1 To .FoundFiles(.FoundFiles.Count)
Workbooks.Open .FoundFiles(i)
For Each sh In ActiveWorkbook.Sheets
sh.Cells.Replace "toto", "titi"
Next sh
ActiveWorkbook.Close True
Next i
End If
End With
End Sub

Enfin, la macro n'a pas été testée.
Cordialement.
Daniel
merci daniel de votre reponse mais je suis loin de maitriser le

système des macros. En l'occurence la macro que vous me donner ou dois-
je l'affecter ? je suis vraiment perdu merci de votre patiente stéphane

Daniel
Le #4260221
Bonjour.
Dans un classeur (différent de ceux à modifier, un nouveau classeur, par
exemple) :
Outils / Macro / Visual Basic Editor
Copie la macro dans la partie droite de l'écran. Reviens dans Excel :
Outils / Macro / Macros
Choisis "test" et clique sur "exécuter"
Fais un test sur un dossier de test avec un sous dossier où tu auras copié
un classeur.
Cordialement.
Daniel
"sdellaux"
On 25 mar, 16:23, "Daniel"
Bonjour.
Tout d'abord, la macro suivante ne fonctionnera pas avec XL2007.
Dans .LookIn, indique le chemin du dossier principal.
Dans la ligne :
sh.Cells.Replace "toto", "titi"
"toto" indique la chaîne recherchée et "titi" la chaîne substituée.

Sub test()
Dim Fichier As String, sh As Worksheet
With Application.FileSearch
.NewSearch
.LookIn = "e:donneesdanielmpfe"
.Filename = "*.xls"
.FileType = msoFileTypeExcelWorkbooks
.SearchSubFolders = True
If .Execute > 0 Then
For i = 1 To .FoundFiles(.FoundFiles.Count)
Workbooks.Open .FoundFiles(i)
For Each sh In ActiveWorkbook.Sheets
sh.Cells.Replace "toto", "titi"
Next sh
ActiveWorkbook.Close True
Next i
End If
End With
End Sub

Enfin, la macro n'a pas été testée.
Cordialement.
Daniel
merci daniel de votre reponse mais je suis loin de maitriser le

système des macros. En l'occurence la macro que vous me donner ou dois-
je l'affecter ? je suis vraiment perdu merci de votre patiente stéphane

Publicité
Poster une réponse
Anonyme