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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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.
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)" <Michel@mail.net> a écrit dans le message de news:
mn.aa757d83d322a865.62698@mail.net...
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
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.
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.
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)" <Michel@mail.net> a écrit dans le message de news:
mn.aa757d83d322a865.62698@mail.net...
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.
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.
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.
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)" <Michel@mail.net> a écrit dans le message de news:
mn.aaa47d83a7927be6.62698@mail.net...
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)" <Michel@mail.net> a écrit dans le message de news:
mn.aa757d83d322a865.62698@mail.net...
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.
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.