Plusieurs challenges pour un même fichier (VBA)

Bonjour à tous,

Je viens demander votre aide pour plusieurs choses mais qui sont en rapport avec le même fichier.

Première chose :

J'ai mis une macro en place sur une feuille qui fait en sorte que dès que la feuille s'ouvre, que celle-ci soit affichée en plein ecran.

J'ai mis le code dans le premier carré.

J'ai mis ensuite la possibilité de faire le choix manuel soit de quitter le mode plein écran soit d'y retourner.

En quittant ma feuille pour en choisir une autre, le mode plein ecran s'en va.

Donc jusqu'ici rien à signaler.

Deuxième chose :

Sur mon fichier, j'aimerais pouvoir grâce au bouton imprimer que celui-ci demande à imprimer la page en cours ou l'ensemble du fichier puis rediriger vers "imprimer", la fonction excel qui devrait le faire par voie normale afin de lancer manuellement l'impression.

Le seul problème est que si je veux imprimer tout le fichier je ne pense pas que cela pose de probleme (version finale je voudrais imprimer de A1 a K663) mais mon problème est que si je veux imprimer une page en cours, je ne sais pas comment m'y prendre.

Par exemple, je voudrais imprimer la page 2 du fichier exemple, il faudrait que la zone d'impression soit définie de A40 a K78

Petite note : chaque page comporte le même nombre de ligne, le même nombre de colonne et toutes les lignes et colonnes ont les mêmes dimensions; ainsi chaque page aura 39 lignes à imprimer comprises dans les colonnes A a K.

Page 1: 1-39 (lignes) ; Page 2: 40-78 et ainsi de suite jusqu'à 663 donc 17 pages au total.

Troisième chose :

J'aimerais savoir quel code je peux utiliser sur mes flèches jaunes.

Je voudrais qu'en cliquant sur une flèche jaune j'accède directement à la page suivante.

Je m'explique si je clique sur la flèche jaune du bas, je veux que celle-ci me redirige vers la feuille suivante en procédant ainsi :

sélectionner A40:K78 et le même dans le coin en haut à gauche

voici une idée pour le coder :

Range("A40:K78").Select
ActiveWindow.ScrollColumn = Selection.Column
 ActiveWindow.ScrollRow = Selection.Row
  ActiveWindow.Zoom = True

Par contre je ne sais pas comment faire pour automatiser ce code. Si par exemple je veux cliquer sur la flèche du bas de la page 2, je ne sais pas comment faire pour sélectionner la feuille 3.

Ps : le bouton flèche en or vers le haut partirait du même principe que la flèche en or vers le bas mais dans le sens opposé

Si le fichier est à la première page et que l'utilisateur clique sur la flèche du haut alors selectionner la page 1

pareil si le fichier est à la dernière page et que l'utilisateur clique sur la flèche du bas alors selectionner la page 17

Troisième challenge (en similitude avec le premier) :

Je voudrais savoir comment faire pour imposer une image en arrière-plan mais uniquement visible lors de l'impression.

J'ai essayé dans mon vrai fichier (qui est trop lourd pour etre mis sur le forum) et le poids d'une image sur chaque page est trop lourd.

je voudrais mettre une image comme celle dans le fichier et dès que j'ai choisi une feuille à imprimer grâce au bouton imprimer que cette image soit mise sur chaque page destinée à être imprimé en prenant une fois le modèle

Ou mieux mais là ce serait idylique, réussir à mettre l'image en arrière plan avec les flèches dorées; quand on clique sur une flèche, cela enlève l'arrière plan de la feuille quitter et met l'arrière plan sur la nouvelle feuille.

Dernière chose :

J'ai utilisé une vingtaines de fois l"'appareil photo" et j'aimerais savoir si on peut stopper les liaisons sans les enlever.

Car j'ai l'impression que ça ralenti vraiment mon fichier ces liaisons.

Je sais que j'en demande vraiment beaucoup mais je mets tous les éléments.

Si quelqu'un peut me donner des pistes mêmes pour un des éléments, je suis preneur.

Très cordialement

Merci d'avoir pris le temps de me lire

24exemple-forum.xlsm (81.70 Ko)

Bonjour

*Pour découper les pages par ligne vous pouvez essayer ceci

Sub découpepage()
    For i = 1 To 663
        If i Mod 39 = 0 Then
            Feuil2.HPageBreaks.Add before:=Feuil2.Cells(i + 1, 1)
        End If
    Next
End Sub

c'est tout pour le moment..

bonjour Wilder,

Merci d'avoir donner un premier élément à ma demande.

Ta macro marche pour la séparation des feuilles.

Merci!

Cordialement

Bonjour, votre demande va en décourager plus d'un car c'est long à lire et le fichier présenté est très/trop succint. Donc il va falloir maintenant y aller step by step, faire des petites demandes de façon fractionnée afin que tout le monde puisse garder le fil.

Rechercher des sujets similaires à "challenges meme fichier vba"