PLEIN ECRAN POUR CERTAINS ONGLETS SEULEMENT

sebbbbb

XLDnaute Impliqué
Bonjour

étant novice en excel VBA je fais appel a vos conseils.

je souhaite que lorsque j'ouvre un fichier la page à l'ouverture apparaisse en plein écran , c'est a dire sans barre de formule, sans N° de ligne, etc.

j'ai bien trouvé une formule à mettre dans thisworkbook mais le souci c'est que lorsque j'enregistre mon fichier c'est une autre page qui s'ouvre en plein écran que par rapport au fichier modèle et là je ne souhaite pas que le plein écran apparaisse.

en résumé je voudrais choisir les feuilles pour lesquelles ce plein écran apparaisse et pas forcement la page qui s'ouvre par défaut

j'espère être suffisamment clair
merci par avance
seb
 

sebbbbb

XLDnaute Impliqué
Bonjour Job75
je viens de nouveau faire appel a votre aide et connaissances. Vous m'aviez gentiment aidé pour réaliser le fichier mentionné ci-dessus avec VBA. apres quelques semaines de recul je me rends compte d'un bug ou problème. en effet tout fonctionne parfaitement sauf que je ne peux plus faire de copier / coller entre 1 autre document et le fichier réalisé.

Voici mon code actuel :

Const PleinEcran$ = "Feuil110,Feuil331,Feuil341,Feuil351,Feuil161,Feuil311,Feuil301,Feuil361,Feuil511,Feuil551,Feuil641" 'CodeNames des feuilles en plein écran, à adapter
Dim desactive As Boolean 'mémorisation de la variable

Private Sub Workbook_Activate()
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_Deactivate()
desactive = False
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Not desactive And InStr("," & PleinEcran & ",", "," & Sh.CodeName & ",") Then
Application.DisplayFullScreen = True
Application.DisplayFormulaBar = False 'facultatif
ActiveWindow.DisplayHeadings = False 'facultatf
ActiveWindow.DisplayGridlines = False 'facultatf
Else
desactive = False
Application.DisplayFullScreen = False
ActiveWindow.WindowState = xlMaximized
Application.DisplayFormulaBar = True 'facultatif
ActiveWindow.DisplayHeadings = True 'facultatf
ActiveWindow.DisplayGridlines = False 'facultatif
ActiveWindow.DisplayHorizontalScrollBar = True 'facultatif
ActiveWindow.DisplayVerticalScrollBar = True 'facultatif
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Sheets("Fiche Données").Range("M2") = "" Then MsgBox "SVP INDIQUER LE DONNEUR D'ORDRE DANS L'ONGLET 'FICHE DONNEES'": Cancel = True
If Sheets("Fiche Données").Range("A5") = "" Then MsgBox "MERCI INDIQUER LE NOM DU CHARGEUR ET / OU DU RECEPTIONNAIRE DE LA MARCHANDISE DANS L'ONGLET 'FICHE DONNEES'": Cancel = True
End Sub

j'ai l'impression que c'est celà qui m'empeche de faire des copiers collers entre une colonne d'un autre classeur et une feuille de mon fichier. en effet lorsque je supprime les éléments ci-dessous celà rentre dans l'ordre

éléments supprimés :

Private Sub Workbook_Activate()
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_Deactivate()
desactive = False
Workbook_SheetActivate ActiveSheet
End Sub

J'ajoute que ma feuille de destination n'est pas protégé et pour faire le copier-coller je fais la manip suivante :
1/ selection de la colonne dans le fichier source
2/selection de la 1ere cellule de la colonne dans une des feuilles du fichier en question
3/ clique sur le bas du bouton coller (flèche vers le bas) et sélectionner "collage spécial", puis "formule"
4/ Valider en appuyant sur OK

en procédant ainsi mon copier coller fonctionne mais je n'ai plus mon plein écran

peux tu m'aider stp

un énorme merci
seb
 

sebbbbb

XLDnaute Impliqué
Bonjour Job75
je viens de nouveau faire appel a votre aide et connaissances. Vous m'aviez gentiment aidé pour réaliser le fichier mentionné ci-dessus avec VBA. apres quelques semaines de recul je me rends compte d'un bug ou problème. en effet tout fonctionne parfaitement sauf que je ne peux plus faire de copier / coller entre 1 autre document et le fichier réalisé.

Voici mon code actuel :

Const PleinEcran$ = "Feuil110,Feuil331,Feuil341,Feuil351,Feuil161,Feuil311,Feuil301,Feuil361,Feuil511,Feuil551,Feuil641" 'CodeNames des feuilles en plein écran, à adapter
Dim desactive As Boolean 'mémorisation de la variable

Private Sub Workbook_Activate()
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_Deactivate()
desactive = False
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Not desactive And InStr("," & PleinEcran & ",", "," & Sh.CodeName & ",") Then
Application.DisplayFullScreen = True
Application.DisplayFormulaBar = False 'facultatif
ActiveWindow.DisplayHeadings = False 'facultatf
ActiveWindow.DisplayGridlines = False 'facultatf
Else
desactive = False
Application.DisplayFullScreen = False
ActiveWindow.WindowState = xlMaximized
Application.DisplayFormulaBar = True 'facultatif
ActiveWindow.DisplayHeadings = True 'facultatf
ActiveWindow.DisplayGridlines = False 'facultatif
ActiveWindow.DisplayHorizontalScrollBar = True 'facultatif
ActiveWindow.DisplayVerticalScrollBar = True 'facultatif
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Sheets("Fiche Données").Range("M2") = "" Then MsgBox "SVP INDIQUER LE DONNEUR D'ORDRE DANS L'ONGLET 'FICHE DONNEES'": Cancel = True
If Sheets("Fiche Données").Range("A5") = "" Then MsgBox "MERCI INDIQUER LE NOM DU CHARGEUR ET / OU DU RECEPTIONNAIRE DE LA MARCHANDISE DANS L'ONGLET 'FICHE DONNEES'": Cancel = True
End Sub

j'ai l'impression que c'est celà qui m'empeche de faire des copiers collers entre une colonne d'un autre classeur et une feuille de mon fichier. en effet lorsque je supprime les éléments ci-dessous celà rentre dans l'ordre

éléments supprimés :

Private Sub Workbook_Activate()
Workbook_SheetActivate ActiveSheet
End Sub

Private Sub Workbook_Deactivate()
desactive = False
Workbook_SheetActivate ActiveSheet
End Sub

J'ajoute que ma feuille de destination n'est pas protégé et pour faire le copier-coller je fais la manip suivante :
1/ selection de la colonne dans le fichier source
2/selection de la 1ere cellule de la colonne dans une des feuilles du fichier en question
3/ clique sur le bas du bouton coller (flèche vers le bas) et sélectionner "collage spécial", puis "formule"
4/ Valider en appuyant sur OK

en procédant ainsi mon copier coller fonctionne mais je n'ai plus mon plein écran

peux tu m'aider stp

un énorme merci
seb
 

sebbbbb

XLDnaute Impliqué
Job75
Peut être pour faire plus simple et pour ceux qui voudrait se joindre à la discusion, vous m'aviez transmis un fichier test pour m'aider (voir PJ).
mon problème est que je ne peux plus faire de copier coller d'un autre fichier vers celui-ci sur les feuilles FB FD FF par exemple. Même en passant par "collage special".
Pouvez vous m'aidez svp ?
celà m'aiderait vraiment.
un gros merci par avance
seb
 

Pièces jointes

  • Plein écran(1) (1).xlsm
    20.8 KB · Affichages: 26

job75

XLDnaute Barbatruc
Bonsoir sebbbbb,

Toutes les instructions que j'ai notées "facultatif" désactivent le mode couper-copier.

Il faut donc les neutraliser pour conserver ce mode :
Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Not desactive And InStr("," & PleinEcran & ",", "," & Sh.CodeName & ",") Then
  Application.DisplayFullScreen = True
  If Application.CutCopyMode Then Exit Sub
  Application.DisplayFormulaBar = False 'facultatif
  ActiveWindow.DisplayHeadings = False 'facultatf
  ActiveWindow.DisplayGridlines = False 'facultatf
Else
  desactive = False
  Application.DisplayFullScreen = False
  ActiveWindow.WindowState = xlMaximized
  If Application.CutCopyMode Then Exit Sub
  Application.DisplayFormulaBar = True 'facultatif
  ActiveWindow.DisplayHeadings = True 'facultatf
  ActiveWindow.DisplayGridlines = True 'facultatf
End If
End Sub
Ce n'est pas l'idéal mais ce n'est guère gênant de procéder ainsi.

Fichier (2).

Bonne nuit.
 

Pièces jointes

  • Plein écran(2).xlsm
    21.3 KB · Affichages: 28
Dernière édition:

Discussions similaires

Réponses
2
Affichages
411

Statistiques des forums

Discussions
312 331
Messages
2 087 359
Membres
103 528
dernier inscrit
hplus