Bonjour,
j'ais créé un script qui me permet de choisir, de modifier puis d'importer un fichier texte .txt.
Je souhaiterais que le script me renvoi une erreur si jamais on ne choisit pas un fichier .txt
J'ai essayé avec GetExtensionName mais cela me renvoi une erreur "Objet requis".

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
Dim fsot, ft, ts, oFL, p, name
Dim fso, sIniDir, sFilter, sTitle, oDlg
Dim fichierFEC
 
'ouvre la fenêtre de choix de fichier
Function GetFileDlgEx(sIniDir,sFilter,sTitle)
  Set oDlg = CreateObject("WScript.Shell").Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("&Len(sIniDir)+Len(sFilter)+Len(sTitle)+41&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />""") 
  oDlg.StdIn.Write "var iniDir='" & sIniDir & "';var filter='" & sFilter & "';var title='" & sTitle & "';"
  GetFileDlgEx = oDlg.StdOut.ReadAll
End Function
 
sIniDir = ""
sFilter = "*.*txt"
sTitle = "Choisissez le fichier à importer"
 
fichierFEC = GetFileDlgEx(Replace(sIniDir,"\","\\"),sFilter,sTitle)
 
Set fso = CreateObject("Scripting.FileSystemObject")
Set oFl = fso.GetFile(fichierFEC)
Set name = fso.GetExtensionName(fichierFEC)
 
MsgBox(oFl)
MsgBox(name)
 
'Les modifications et l'import se font après et fonctionnent correctement (grâce à vous par ailleurs)
Il me renvoi une erreur sur la ligne Set name.
Je ne comprend pas d'ou viens mon erreur puisque MsgBox(oFl) me renvoi le chemin complet du fichier.