import automatique

Le
Michel (pen ar bed)
Bonjour,

Dans un répertoire j'ai des fichiers CSV ou XLS qui arrivent
régulièrement (un par mois)

j'essaie de faire en sorte que lorsque j'ouvre un classeur un onglet
soit rajouté automatiquement au classeur avec comme nom le nom du
fichier si un nouveau fichier est dans le répertoire .

J'avoue que je galère un peut (beaucoup), de l'aide serait la bienvenue

Merci
M.
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.C
Le #5224051
Bonjour.
Dans "thisworkbook", mets la macro suivante :

Private Sub Workbook_Open()
Dim Fich As String, Sh As Worksheet, Top As Boolean
Const Chemin = "e:donneesdaniel"
Fich = Dir(Chemin & "*.*")
Do While Fich <> ""
'à modifier pour classeurs XL2007
If Right(Fich, 4) = ".xls" Or Right(Fich, 4) = ".csv" Then
For Each Sh In Sheets
If Sh.Name <> Fich Then Top = True
Next Sh
If Top = True Then
Top = False
Sheets.Add.Name = Fich
End If
End If
Fich = Dir
Loop
End Sub

Tu dois modifier la ligne :
Const Chemin = "e:donneesdaniel"
pour remplacer le nopm du dossier.
Note : le nom de la nouvelle feuille est le nom du classeur avec son
extension. Si ce n'est pas ce que tu veux et que tu ne sais pas modifier la
macro, dis-le ici.
Cordialement.
Daniel
"Michel (pen ar bed)"
Bonjour,

Dans un répertoire j'ai des fichiers CSV ou XLS qui arrivent régulièrement
(un par mois)

j'essaie de faire en sorte que lorsque j'ouvre un classeur un onglet soit
rajouté automatiquement au classeur avec comme nom le nom du fichier si un
nouveau fichier est dans le répertoire .

J'avoue que je galère un peut (beaucoup), de l'aide serait la bienvenue

Merci
M.




Michel (pen ar bed)
Le #5224041
Bonjour.
Dans "thisworkbook", mets la macro suivante :

Private Sub Workbook_Open()
Dim Fich As String, Sh As Worksheet, Top As Boolean
Const Chemin = "e:donneesdaniel"
Fich = Dir(Chemin & "*.*")
Do While Fich <> ""
'à modifier pour classeurs XL2007
If Right(Fich, 4) = ".xls" Or Right(Fich, 4) = ".csv" Then
For Each Sh In Sheets
If Sh.Name <> Fich Then Top = True
Next Sh
If Top = True Then
Top = False
Sheets.Add.Name = Fich
End If
End If
Fich = Dir
Loop
End Sub

Tu dois modifier la ligne :
Const Chemin = "e:donneesdaniel"
pour remplacer le nopm du dossier.
Note : le nom de la nouvelle feuille est le nom du classeur avec son
extension. Si ce n'est pas ce que tu veux et que tu ne sais pas modifier la
macro, dis-le ici.
Cordialement.
Daniel
"Michel (pen ar bed)"
Bonjour,

Dans un répertoire j'ai des fichiers CSV ou XLS qui arrivent régulièrement
(un par mois)

j'essaie de faire en sorte que lorsque j'ouvre un classeur un onglet soit
rajouté automatiquement au classeur avec comme nom le nom du fichier si un
nouveau fichier est dans le répertoire .

J'avoue que je galère un peut (beaucoup), de l'aide serait la bienvenue

Merci
M.


Merci beaucoup.


Pour la feuille avec l'extension en .xls je vais chercher pour
modifier la macro, et importer les données dans la foulée. Si je trouve
pas je reviens.

M.


Daniel.C
Le #5223951
Je te mets la solution, car je dois partir :
Remplace :
Sheets.Add.Name = Fich
par :
Sheets.Add.Name = Left(Fich, Len(Fich) - 4)
Daniel
"Michel (pen ar bed)"
Bonjour.
Dans "thisworkbook", mets la macro suivante :

Private Sub Workbook_Open()
Dim Fich As String, Sh As Worksheet, Top As Boolean
Const Chemin = "e:donneesdaniel"
Fich = Dir(Chemin & "*.*")
Do While Fich <> ""
'à modifier pour classeurs XL2007
If Right(Fich, 4) = ".xls" Or Right(Fich, 4) = ".csv" Then
For Each Sh In Sheets
If Sh.Name <> Fich Then Top = True
Next Sh
If Top = True Then
Top = False
Sheets.Add.Name = Fich
End If
End If
Fich = Dir
Loop
End Sub

Tu dois modifier la ligne :
Const Chemin = "e:donneesdaniel"
pour remplacer le nopm du dossier.
Note : le nom de la nouvelle feuille est le nom du classeur avec son
extension. Si ce n'est pas ce que tu veux et que tu ne sais pas modifier
la macro, dis-le ici.
Cordialement.
Daniel
"Michel (pen ar bed)"
Bonjour,

Dans un répertoire j'ai des fichiers CSV ou XLS qui arrivent
régulièrement (un par mois)

j'essaie de faire en sorte que lorsque j'ouvre un classeur un onglet
soit rajouté automatiquement au classeur avec comme nom le nom du
fichier si un nouveau fichier est dans le répertoire .

J'avoue que je galère un peut (beaucoup), de l'aide serait la bienvenue

Merci
M.


Merci beaucoup.


Pour la feuille avec l'extension en .xls je vais chercher pour modifier la
macro, et importer les données dans la foulée. Si je trouve pas je
reviens.

M.






Publicité
Poster une réponse
Anonyme