Bonjour,
Voilà. J'ai créé (copié et adapté) le fichier "Toto.vbs" suivant qui lance le module "OpenForm" contenu dans le fichier "Modèle.xlt" mais sans afficher celui-ci sur le bureau :
Voici le fichier "Toto.vbs" :
Voici le module "OpenForm" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Const Wbk= "C:\Documents and Settings\.......\......\Modèle.xlt" Dim oXL, wBook Set oXL = WScript.CreateObject("Excel.Application") Set wBook = oXL.Workbooks.Open(Wbk) oXL.Run "OpenForm" On Error Resume Next Set oXL = Nothing
Voici le UserForm1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Sub OpenForm() If Sheets("JOURNEE").Range("AN298").Value = 1 Then UserForm1.Show End If End Sub
L'action sur le bouton (unique) "START" du UserForm1 oblige l'utilisateur à enregistrer le fichier, il s'agit alors d'un exemplaire .xls journalier qui s'enregistre et s'ouvre automatiquement (chemin + date du jour + .xls) SI le fichier n'existe pas encore (condition avec FileExist).
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 Private Sub CommandButton1_Click() Unload UserForm1 Dim chemin: [c:\] chemin = "c:\documents and settings\......\........\bureau\" Dim FileExist As String FileExist = chemin & Format(Date, "dd-mm-yy") & ".xls" If Dir(FileExist, vbNormal Or vbReadOnly Or vbHidden Or vbArchive) = "" Then ActiveWorkbook.SaveAs chemin & Format(Date, "dd-mm-yy") & ".xls" Application.WindowState = xlMaximized Sheets("JOURNEE").Range("A1").Select Else MsgBox "La journée est déjà enregistrée dans STOCK sur le Bureau !", vbExclamation, "Hé !" Application.DisplayAlerts = False ActiveWindow.Close Application.DisplayAlerts = True End If Workbooks.Application.Visible = True End Sub
SI le fichier existe, un message prévu apparaît pour le signaler MAIS sa fermeture provoque le message d'erreur de VBScript suivant :
titre= Windows Script Host
(bouton "OK" = le message se ferme)Script: c:\documents and settings\.......\.......\Toto.vbs
Ligne: 5
Caract: 1
Erreur: Erreur d'exécution inconnue
Code: 800A03EC
Source: Erreur d'exécution Microsoft VBScript
Je travaille avec Windows XP Pro.
Quelqu'un aurait-il une idée pour corriger cette erreur ?
Merci d'avance.
Partager