voila je seche sur un petit probleme.
j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire
donné et d'en extraire le n°
ex:
fichier: "Fiche_de_Travail_Reinert_Kad_010.xls"
ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer
une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc
comment puis je faire
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
Pierre Fauconnier
Bonsoir.
Sans VBA, je ne vois pas de solution. Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String) Dim fs As New FileSystemObject Dim Dossier As Folder Dim Fichier As File Dim Nom_Max As String Set Dossier = fs.GetFolder(Chemin) For Each Fichier In Dossier.Files If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name End If Next Fichier Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "") Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "") Set Fichier = Nothing Set Dossier = Nothing Set fs = Nothing End Function
Cette fonction est utilisable dans Excel ou en VBA. En excel, elle s'utiliser comme suit Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations") pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" a écrit dans le message de news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc comment puis je faire
merci d'avance
christophe
Bonsoir.
Sans VBA, je ne vois pas de solution.
Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux
utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String)
Dim fs As New FileSystemObject
Dim Dossier As Folder
Dim Fichier As File
Dim Nom_Max As String
Set Dossier = fs.GetFolder(Chemin)
For Each Fichier In Dossier.Files
If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then
If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name
End If
Next Fichier
Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "")
Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "")
Set Fichier = Nothing
Set Dossier = Nothing
Set fs = Nothing
End Function
Cette fonction est utilisable dans Excel ou en VBA.
En excel, elle s'utiliser comme suit
Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations")
pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
"Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe
zen )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" <cgrosjean@europarl.eu.int> a écrit dans le message de news:
918E2E9E-AA1E-418D-B0F4-6771A47460B7@microsoft.com...
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme.
j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire
donné et d'en extraire le n°
ex:
fichier: "Fiche_de_Travail_Reinert_Kad_010.xls"
ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer
une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc
etc
comment puis je faire
Sans VBA, je ne vois pas de solution. Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String) Dim fs As New FileSystemObject Dim Dossier As Folder Dim Fichier As File Dim Nom_Max As String Set Dossier = fs.GetFolder(Chemin) For Each Fichier In Dossier.Files If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name End If Next Fichier Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "") Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "") Set Fichier = Nothing Set Dossier = Nothing Set fs = Nothing End Function
Cette fonction est utilisable dans Excel ou en VBA. En excel, elle s'utiliser comme suit Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations") pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" a écrit dans le message de news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc comment puis je faire
merci d'avance
christophe
docm
Bonjour.
Une autre méthode :
Sub zaza2() Dim nom As String Dim extension As String Dim Chemin As String Dim sFormat As String
numero = Dernier_FichierPlusUn(nom, extension, Chemin, sFormat)
f = Chemin & nom & numero & extension
End Sub
Function Dernier_FichierPlusUn(Racine As String, extension As String, Chemin As String, sFormat As String)
d = Dir(Chemin) While d <> "" If Mid(UCase(d), 1, Len(Racine)) <> UCase(Racine) Then Else a = Mid(d, 1, Len(d) - Len(extension)) numero = Mid(a, Len(Racine) + 1) If IsNumeric(numero) Then If CDbl(numero) > CDbl(DernierNumero) Then DernierNumero = numero End If End If End If d = Dir Wend Dernier_FichierPlusUn = Format(DernierNumero + 1, sFormat) End Function
docm
"christophe" a écrit dans le message news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc
comment puis je faire
merci d'avance
christophe
Bonjour.
Une autre méthode :
Sub zaza2()
Dim nom As String
Dim extension As String
Dim Chemin As String
Dim sFormat As String
numero = Dernier_FichierPlusUn(nom, extension, Chemin, sFormat)
f = Chemin & nom & numero & extension
End Sub
Function Dernier_FichierPlusUn(Racine As String, extension As String, Chemin
As String, sFormat As String)
d = Dir(Chemin)
While d <> ""
If Mid(UCase(d), 1, Len(Racine)) <> UCase(Racine) Then
Else
a = Mid(d, 1, Len(d) - Len(extension))
numero = Mid(a, Len(Racine) + 1)
If IsNumeric(numero) Then
If CDbl(numero) > CDbl(DernierNumero) Then
DernierNumero = numero
End If
End If
End If
d = Dir
Wend
Dernier_FichierPlusUn = Format(DernierNumero + 1, sFormat)
End Function
docm
"christophe" <cgrosjean@europarl.eu.int> a écrit dans le message news:
918E2E9E-AA1E-418D-B0F4-6771A47460B7@microsoft.com...
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme.
j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire
donné et d'en extraire le n°
ex:
fichier: "Fiche_de_Travail_Reinert_Kad_010.xls"
ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer
une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc
etc
numero = Dernier_FichierPlusUn(nom, extension, Chemin, sFormat)
f = Chemin & nom & numero & extension
End Sub
Function Dernier_FichierPlusUn(Racine As String, extension As String, Chemin As String, sFormat As String)
d = Dir(Chemin) While d <> "" If Mid(UCase(d), 1, Len(Racine)) <> UCase(Racine) Then Else a = Mid(d, 1, Len(d) - Len(extension)) numero = Mid(a, Len(Racine) + 1) If IsNumeric(numero) Then If CDbl(numero) > CDbl(DernierNumero) Then DernierNumero = numero End If End If End If d = Dir Wend Dernier_FichierPlusUn = Format(DernierNumero + 1, sFormat) End Function
docm
"christophe" a écrit dans le message news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc
comment puis je faire
merci d'avance
christophe
christophe
bonjour a Pierre et docm
Grand merci pour votre aide, cela m' a été très utile et j'ai pu ainsi finaliser ma macro.
a bientot
christophe
Bonsoir.
Sans VBA, je ne vois pas de solution. Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String) Dim fs As New FileSystemObject Dim Dossier As Folder Dim Fichier As File Dim Nom_Max As String Set Dossier = fs.GetFolder(Chemin) For Each Fichier In Dossier.Files If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name End If Next Fichier Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "") Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "") Set Fichier = Nothing Set Dossier = Nothing Set fs = Nothing End Function
Cette fonction est utilisable dans Excel ou en VBA. En excel, elle s'utiliser comme suit Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations") pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" a écrit dans le message de news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc comment puis je faire
merci d'avance
christophe
bonjour a Pierre et docm
Grand merci pour votre aide, cela m' a été très utile et j'ai pu ainsi
finaliser
ma macro.
a bientot
christophe
Bonsoir.
Sans VBA, je ne vois pas de solution.
Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux
utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String)
Dim fs As New FileSystemObject
Dim Dossier As Folder
Dim Fichier As File
Dim Nom_Max As String
Set Dossier = fs.GetFolder(Chemin)
For Each Fichier In Dossier.Files
If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then
If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name
End If
Next Fichier
Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "")
Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "")
Set Fichier = Nothing
Set Dossier = Nothing
Set fs = Nothing
End Function
Cette fonction est utilisable dans Excel ou en VBA.
En excel, elle s'utiliser comme suit
Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations")
pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
"Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe
zen )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" <cgrosjean@europarl.eu.int> a écrit dans le message de news:
918E2E9E-AA1E-418D-B0F4-6771A47460B7@microsoft.com...
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme.
j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire
donné et d'en extraire le n°
ex:
fichier: "Fiche_de_Travail_Reinert_Kad_010.xls"
ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer
une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc
etc
comment puis je faire
Grand merci pour votre aide, cela m' a été très utile et j'ai pu ainsi finaliser ma macro.
a bientot
christophe
Bonsoir.
Sans VBA, je ne vois pas de solution. Avec VBA, en ayant coché la référence "Microsoft Scripting Runtime", tu peux utiliser la fonction suivante
Function Dernier_Fichier(Racine As String, Chemin As String) Dim fs As New FileSystemObject Dim Dossier As Folder Dim Fichier As File Dim Nom_Max As String Set Dossier = fs.GetFolder(Chemin) For Each Fichier In Dossier.Files If UCase(Left(Fichier.Name, Len(Racine))) = UCase(Racine) Then If Fichier.Name > Nom_Max Then Nom_Max = Fichier.Name End If Next Fichier Dernier_Fichier = Replace(UCase(Nom_Max), UCase(Racine), "") Dernier_Fichier = Replace(UCase(Dernier_Fichier), ".XLS", "") Set Fichier = Nothing Set Dossier = Nothing Set fs = Nothing End Function
Cette fonction est utilisable dans Excel ou en VBA. En excel, elle s'utiliser comme suit Þrnier_fichier("Fiche_de_Travail_Reinert_Kad_";"c:Prestations") pour retrouver ton dernier fichier dans le dossier c:prestations
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"christophe" a écrit dans le message de news:
bonjour a vous les pros du VBA,
voila je seche sur un petit probleme. j'ai besoin de connaitre le dernier fichier enregistrer dans un repetoire donné et d'en extraire le n° ex: fichier: "Fiche_de_Travail_Reinert_Kad_010.xls" ce que j'ai besoin de connaitre est le 010 et de le recuperer pour generer une nouvelle feuille appeler "Fiche_de_Travail_Reinert_Kad_011.xls" etc etc comment puis je faire