Bonjour à tous,
J'ai déjà ouvert un sujet mais celui ci ayant été partiellement résolu, j'en ouvre un spécialement à ce problème :
Je souhaite conditionner l'ouverture d'un fichier si celui ci dépasse une certaine date (le fichier ne s'ouvre pas si la date est dépassée)
Le fichier excel qui s'ouvre , et qui doit s'interroger si la date d'expiration est toujours bonne, devrait aller chercher cette information dans un autre fichier excel.
Voici le code utilisé et fonctionnel mais uniquement si c'est dans le fichier
Private Sub Workbook_Open()
Dim iYear As Integer
Dim iMonth As Integer
Dim iDay As Integer
Dim dDate As Date
iYear = Sheets("Feuil1").Range("A1")
iMonth = Sheets("Feuil1").Range("A2")
iDay = Sheets("Feuil1").Range("A3")
dDate = DateSerial(iYear, iMonth, iDay)
Application.ScreenUpdating = False
If dDate <= Date Then
Application.DisplayAlerts = False
ThisWorkbook.Close SaveChanges:=False
Application.DisplayAlerts = True
Else
End If
Application.ScreenUpdating = True
End Sub
Donc en A1 j'ai l'année, A2 le mois et A3 le jour.
J'ai des connaissances limitées en VBA mais j'ai testé le code suivant :
Private Sub Workbook_Open()
Dim iYear As Integer
Dim iMonth As Integer
Dim iDay As Integer
Dim dDate As Date
Dim Depart As String
Depart = "C:\Mes Documents\Date.xlsx"
iYear = Depart & Sheets("Feuil1").Range("A1")
iMonth = Depart & Sheets("Feuil1").Range("A2")
iDay = Depart & Sheets("Feuil1").Range("A3")
dDate = DateSerial(iYear, iMonth, iDay)
Application.ScreenUpdating = False
If dDate <= Date Then
Application.DisplayAlerts = False
ThisWorkbook.Close SaveChanges:=False
Application.DisplayAlerts = True
Else
End If
Application.ScreenUpdating = True
End Sub
Donc dans ce code j'ai simplement ajouter Depart as String + Depart = Chemin du fichier qui contient la date (c:/mes doc..) + Depart & Sheets("feuil1") etc...
J'ai toujours une erreur 13 "incompatibilité de type"
Est-ce que quelqu'un a une solution ?
Merci par avance
Cordialement