Bonjour,

Je souhaite ouvrir un fichier protégé par un mot de passe sans l'afficher.
Le fichier ne s'affiche pas, cependant, pour une raison que je ne comprends pas, il me demande d'entrer le mot de passe, malgré le paramètre Password. Qu'est-ce qui n'est pas d'équerre ?
Par ailleurs, j'imagine utiliser ce code pour ouvrir le fichier

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
 
Function OpenFileExcel()
Dim appxl As Excel.Application
Dim FichNumero As String, FichCopie As String
Set appxl = CreateObject("Excel.application")
 
    If FichierExiste("C:\WinBooks\Office\160302 - Numerotation des ordres de paiements bancaires.xlsx") Then
        FichNumero = "C:\WinBooks\Office\160302 - Numerotation des ordres de paiements bancaires.xlsx"
        FichCopie = "C:\WinBooks\Office\Copie - Numerotation des ordres de paiements bancaires.xlsx"
    ElseIf FichierExiste("d:\Dossiers\DOCUMENTS GENERAUX\Sur mesure - originaux\Habari Kani\160302 - Numerotation des ordres de paiements bancaires.xlsx") Then
        FichNumero = "d:\Dossiers\DOCUMENTS GENERAUX\Sur mesure - originaux\Habari Kani\160302 - Numerotation des ordres de paiements bancaires.xlsx"
        FichCopie = "d:\Dossiers\DOCUMENTS GENERAUX\Sur mesure - originaux\Habari Kani\Copie - Numerotation des ordres de paiements bancaires.xlsx"
    Else
        MsgBox ("Ce fichier n'existe pas")
    End If
 
With appxl
    .ScreenUpdating = False
    .Visible = False
    .Workbooks.Open Filename:=FichNumero, Password:="160302"
 
End With
 
End Function
et ce code pour le fermer

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
Function CloseFileExcel()
    appxl.Workbooks(FichNumero).Save
    appxl.Workbooks(FichNumero).Close
 
    Set appxl = Nothing
    FileCopy FicheNumero, FichCopie
 
End Function
Deux questions :
Les variables FichNumero et FichCopie ne suivent pas de OpenFcileExcel à CloseFileExcel. Que faut-il faire pour qu'une variable soit reconnue d'une fonction à une sub ou à une autre fonction ? Même en les déclarant publiques, elles ne sont pas visibles.
En outre, cette fonction ne sauve ni ferme rien du tout, même pas les processus d'Excel ouverts.

Une idée de l'erreur ?

D'avance merci de prendre la peine de corriger mes incompétences et bonne journée !

Henri