Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

import automatique

3 réponses
Avatar
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.

3 réponses

Avatar
Daniel.C
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)" a écrit dans le message de news:

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.




Avatar
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)" a écrit dans le message de news:

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.


Avatar
Daniel.C
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)" a écrit dans le message de news:

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)" a écrit dans le message de news:

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.