Variables qui jouent à cache - cache
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:
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:
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