Bonjour,
Voici le problème sur lequel je bloque depuis plusieurs jours :
J'ai créé une appli excel qui fait aller et venir l'utilisateur entre deux classeurs. Le classeur où se trouve l'interface utilisateur doit être en permanence en pleine écran et celui ou se trouve les résultats ne doit pas l'être. Je cherche donc à pouvoir switcher le mode pleine écran en fonction du classeur actif.
J'ai déjà exploré plusieurs pistes : -Fermer l'IU et la rouvrir une fois que le classeur résultat est fermé ( pas bon )
-Essayer de mettre le classeur résultat en mode normal quand il devient actif et le classeur IU en pleine écran qui il redevient actif ( Pas bon car si l'utilisateur utilise "reduire", "niveau inf" ou "fermer", il a accès au bandeau de l'IU)
-Ecrire une macro à l'aide d'une macro dans le classeur résultat pour le mettre en mode normal a l'ouverture ( pas bon )
-Restrindre le pleine écran à un seul workbook ( pas trouver de code pour)
Je suis vraiment a cours d'idées.
Voici mon code :
Toute aide sera la bienvenue.
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 Private Sub CommandButton2_Click() If IsNull(TextBox1.Value) Or TextBox1.Value = "" Then MsgBox "Le champ est vide" Exit Sub End If MonX = TextBox1.Value With Sheets("Table Séquences") .Select Rows("5:5").Select Selection.AutoFilter ActiveSheet.Range("A5:F" & Range("F1048576").End(xlUp).Row).AutoFilter Field:=5, Criteria1:=MonX End With Sheets("Table Séquences").Move Cells.Copy Sheets.Add After:=Sheets(Sheets.Count) Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.DisplayAlerts = False [G:G].ClearContents [1:4].Delete MaVariable = Year(Now()) & Month(Now()) & Day(Now()) & Hour(Now()) & Minute(Now()) & Second(Now()) 'numéro chrono pour distinguer les noms de fichier ActiveWorkbook.SaveAs "Ma_Selection_de_Séquences_numéro_d'ordre_" & MaVariable MyWB = ActiveWorkbook.Name Application.DisplayAlerts = True ActiveSheet.Name = "Restitution" Columns("F:F").NumberFormat = "m/d/yyyy" Application.CutCopyMode = False Application.DisplayAlerts = False Sheets("Table Séquences").Delete Application.DisplayAlerts = True If Range("A2").Value = "" Then MsgBox "Aucune séquence n'a jusqu'ici été crée avec ce numéro de X comme mot de passe réseau" Application.DisplayAlerts = False ActiveWorkbook.Close Application.DisplayAlerts = True Unload Me Sheets("template").Select ActiveSheet.Unprotect ActiveSheet.Shapes.Range("Plaque 3").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton3_QuandClic" ActiveSheet.Shapes.Range("Plaque 4").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton4_QuandClic" ActiveSheet.Shapes.Range("Plaque 5").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton5_QuandClic" Range("A2").Select 'pour éviter que le bouton 5 reste selectionné ActiveSheet.Protect Exit Sub Else: MsgBox "Dans cette feuille vous trouverez le résultat de votre sélection" End If Application.DisplayAlerts = False Workbooks("Name.xlsm").Activate Sheets("template").Select ActiveSheet.Unprotect ActiveSheet.Shapes.Range("Plaque 3").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton3_QuandClic" ActiveSheet.Shapes.Range("Plaque 4").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton4_QuandClic" ActiveSheet.Shapes.Range("Plaque 5").Select 'réaffectation des macros aux bons boutons. Selection.OnAction = "Bouton5_QuandClic" Range("A2").Select 'pour éviter que le bouton 5 reste selectionné ActiveSheet.Protect Workbooks(MyWB).Activate Unload Me Application.DisplayAlerts = True End Sub
Cordialement,
Ltspitfire
Partager