ouvrir des fichiers commancant par t_s

sopfci

XLDnaute Nouveau
Bonjour,

Je suis nouveau dans la programmation VBA sous excel.
dans une macro, je cherche à ouvrir un par un les fichiers ''.dat'' (au format text) commancant par 't_sr' du repertoire.

J'ai commencé par trouver ceci, qui ouvre tous les fichiers .dat du repertoire.
Le fichier excel 'macro' est dans le repertoire source.


Set fso = CreateObject("Scripting.FileSystemObject")
Set repertoire = fso.GetFolder(ThisWorkbook.path)
Set fichiers = repertoire.Files

For Each f In fichiers
NomComplet = fso.buildpath(repertoire, f.Name)
If NomComplet <> ThisWorkbook.FullName And fso.GetExtensionName (NomComplet) = ".dat" Then
Workbooks.Open Filename:=NomComplet

est -il possible de la modifier pour ouvrir que les fichiers commancant par 't_sr'

Merci beaucoup,
 

mromain

XLDnaute Barbatruc
Re : urgent, ouvrir des fichiers commancant par t_s

bonjour sopfci,

à tester :
Code:
If [COLOR=Red][B]Left(f.Name, 4) = "t_sr" And[/B][/COLOR] NomComplet <> ThisWorkbook.FullName And fso.GetExtensionName(NomComplet) = ".dat" Then Workbooks.Open Filename:=NomComplet
a+
 

job75

XLDnaute Barbatruc
Re : urgent, ouvrir des fichiers commancant par t_s

Bonjour sopfci, mromain,

Essayer aussi :

Code:
If NomComplet <> ThisWorkbook.FullName And NomComplet Like "t_sr*.dat" Then
Workbooks.Open Filename:=NomComplet
End If

Edit : bien sûr NomComplet <> ThisWorkbook.FullName And n'est pas nécessaire si ThisWorkbook.FullName ne commence jamais par t_sr...

A+
 
Dernière édition:

sopfci

XLDnaute Nouveau
Re : ouvrir des fichiers commancant par t_s

re

merci pour votre aide, mais cela ne fonctionne pas.
J'ai mis cela en forme, mais il ouvre tous les fichiers.


Set fso = CreateObject("Scripting.FileSystemObject")
Set repertoire = fso.GetFolder(ThisWorkbook.Path)
Set fichiers = repertoire.Files

Application.ScreenUpdating = False

For i% = 1 To ThisWorkbook.Sheets.Count
Sheets(i).Select
Range(Range("A65536").End(xlUp), Range("j2")).Rows.EntireRow.Delete
Next

For Each f In fichiers
NomComplet = fso.buildpath(repertoire, f.Name)
If Left(f.Name, 4) = "t_sr" And NomComplet <> ThisWorkbook.FullName And fso.GetExtensionName(NomComplet) = ".dat" Then
Workbooks.Open Filename:=NomComplet

For i% = 1 To Sheets.Count
Workbooks(fso.GetBaseName(NomComplet) & "." & fso.GetExtensionName(NomComplet)).Activate
Sheets(i).Select

:)
 

Discussions similaires

Réponses
4
Affichages
2 K

Statistiques des forums

Discussions
312 252
Messages
2 086 631
Membres
103 283
dernier inscrit
SabSab