Rendre des cellules invisible pour un rendu "logiciel"

Bonjour à vous,

Etant tombé sur le logiciel "Contact-Pratique" sur ce site, j'aimerais comprendre et savoir comment réussir à donner à un fichier Excel un rendu de "logiciel" : j'entends par cela que seul les cellules à remplir (nom, prénom ...) apparaissent !

Sur "Contact-Pratique", on ne peut cliquer sur aucun autre endroit sur la feuille, seul les cellules à remplir sont accessibles, et aucun rectangle de selection apparait à cette case lorsque l'on clique dessus ... Le rendu donne alors une réel impression d'être sur un logiciel, et non sur une feuille Excel ...

Si quelqu'un pourrait m'expliquer comment réussir à arriver à cela ???

J'espère en tout cas que mes explications vous permettront de me comprendre ...

AnthonyE

Bonsoir,

Ils utilisent un UserForm, dans lequel on crée l'ensemble des composants souhaités, des images, etc

Toutes les données doivent être stockées, dans une feuille qui peut être masquée.

En complément, les lignes et colonnes sont masquées, il y a juste une image.

C'est ensuite de la programmation VBA pure, nécessitant quelques connaissances, plus ou moins poussées selon ce que l'on souhaite faire.

On peut donc faire un logiciel aussi complexe que l'on veut, comme avec tout langage de programmation, certes avec des limites mais pas tant que ça.

Ci-joint un exemple light.

Bonne soirée

Bouben

28formulaire.xlsm (62.77 Ko)

Bonsoir,

Une autre possibilité : enlever la protection des cellules à renseigner et protéger la feuille.

Après c'est de la mise en forme (couleur de fond, des encadrements pour les faire disparaître...).

La touche "tab" ne se positionnera que sur les touches non protégées.

Reste éventuellement le code vba pour récupérer les données dans une base sur une feuille différente.

A voir...

egg

Merci pour votre réponse Egg !

Effectivement j'ai réussi à fonctionner comme vous me l'avez expliqué ...

En revanche, est t'il possible de changer la couleur de "l'encadrement" lorsque qu'une cellule est sélectionné ? Je m'explique, lorsque je vais dans une cellule pour y entrer : exemple : un nom ... la cellule est alors sélectionnée et apparait la cellule est donc entouré d'un rectangle bleu qui montre la selection de la cellule ... y a t'il un moyen de cacher cela ?

2ème question : est t'il possible de faire disparaitre l'ensemble du restant de la feuille ? Je m'explique, imaginons que j'ai adapter mon "décor" du logiciel sur la taille de la feuille qui est visible sur l'écran sans se diriger ni vers le bas ni vers le coté ... serait t'il possible d'empêcher l'action de découvrir les colonnes et lignes qui sont en dehors de mon champs de vision initiale ?

J'espère encore une fois être assez clair dans es explications

Anthony

Bonjour à tous,

Pour le 1er point, ce doit être possible mais je ne sais pas dire au débotté...

Pour le deuxième il faut définir la propriété de "scrollarea" en fonction de la page, exemple :$A$1:$N$30 (il faut donc ouvrir vba et aller dans les propriétés de la page concernée.

Voilou !

Merci pour la réponse ... en revanche je ne m'y connais pas du tout en VBA !!!

Qu'est ce qu'il faudrait que je rentre comme code afin de bloqué une page de A1 jusqu'à T52 ???

Merci d'avance !!!

Bonsoir,

Pas de code à entrer.

Il faut ouvrir VBA (alt + F11 ou bien alt + F11 + FN)

Dans la partie gauche haute se trouvent les objets du dossier dont la page concernée (Feuil1 par exemple)

Dans la partie gauche basse toutes les propriétés de la dite page (une fois que celle-ci est sélectionnée)

Dans la propriété "scrollarea" saisir donc $A$1:$T$52

C'est tout !

Bonsoir,

J'ai effectivement réussi à faire ce que vous m'aviez dit ... Lorsque je fais la manipulation du "scrollarea" la feuille se bloque alors au colonnes et lignes souhaitées ... en revanche lorsque je sauvegarde le document et que je le ré-ouvre ... le blocage à disparut ...

Ceci est t'il normal ? Y a t'il une autre manip à effectuer pour que le "scrollarea" reste actif même au moment de la ré-ouverture du document ???

Merci d'avance

Oui : passer par un code vba a l'ouverture du fichier

D'accord !!!

Par contre, comme je l'avais dit précédemment, je n'ai absolument aucune connaissance ni ou entrer le code, ni quoi entrer comme code !

Serait t'il possible de m'aiguiller dans cette démarche svp ? Me donner les différentes étapes et code svp ?

Il faudra entrer ce code lors de chaque ouverture du fichier ou 1 seule fois suffira ?

Merci beaucoup

Anthony

Bonjour,

C"est pas très compliqué :

  • Dans VBA, en haut à gauche sélectionner "Thisworkbook"
  • dans la partie droite mettre la macro suivante :

Private Sub Workbook_Open()

Sheets("Feuil1").ScrollArea = ("$A$1:$S$30")

End Sub

où "Feuil1" est le nom de la feuille à figer et bien sûr modifier la zone voulue.

Fermer le classeur et à l'ouverture cette zone sera systématiquement prise en compte.

C'est tout !

Je n'ai pas réussi ... En quel format faut t'il que j'enregistre mon document afin que les macros fonctionnent lors de l'ouverture ?

un dessin vaut peut être mieux qu'un long discourt : le doc word est plus explicite.

Il faut enregistrer le dossier excel en format .xlsm

12visuel.docx (88.68 Ko)

Génial j'ai réussi merci beaucoup !!!

Dernière petite question, si je possède 20 feuilles dans mon document, et que je souhaite bloqué les 20 feuilles comment dois-je m'y prendre ?

entre Sub... et End Sub rajouter autant de lignes que de feuilles en changeant à chaque fois le nom e la feuille et éventuellement les références cellules.

Un petit conseil : il existe des bouquins sur vba très bien faits et accessibles aux débutants.

Attention : quand on commence, on ne plus s'arrêter !

Bon courage !

Ne pas oublier de mettre le problème comme résolu svp !

Rechercher des sujets similaires à "rendre invisible rendu logiciel"