Bonjour à tous,
Débutant sous vba, j'ai un petit problème je veux obliger les utilisateurs de mon fichier à activer les macros. Le problème ne se situe pas à l'ouverture du fichier (non pas dans le workbook_open), mais lorsque j'enregistre mon fichier et que je veux le ré ouvrir (donc je pense dans le before_close).
De plus dans mon before_close j'ai un contrôle qui oblige à remplir certaines cellules et je ne sais pas où placer le code. Merci de votre aide...
Code pour obliger à activer les macros :
Before_close :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Workbook_Open() Dim curSheet As Worksheet For Each curSheet In ThisWorkbook.Sheets If curSheet.Name <> "FeuilleActivationDesMacros" Then curSheet.Visible = xlSheetVisible Next curSheet ThisWorkbook.Sheets("FeuilleActivationDesMacros").Visible = xlSheetVeryHidden End Sub
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 Private Sub Workbook_BeforeClose(Cancel As Boolean) Const Nb_lig As Integer = 4 Const Nb_col As Integer = 16 For l = 2 To Nb_lig For c = 7 To Nb_col If Sheets("RFQ 2013 Legs").Cells(l, c) <> "" And Sheets("RFQ 2013 Legs").Cells(l, c + 1) = "" Then MsgBox " The cell " & Cells(l, c + 1).Address & " is empty ", vbCritical Cancel = True End If Next Next Exit Sub ThisWorkbook.Sheets("FeuilleActivationDesMacros").Visible = xlSheetVisible Dim curSheet As Worksheet For Each curSheet In ThisWorkbook.Sheets If curSheet.Name <> "FeuilleActivationDesMacros" Then curSheet.Visible = xlSheetVeryHidden Next curSheet ThisWorkbook.Save End Sub
Partager