Code VBA pour masquer des colonnes si...

P

Pierre

Guest
Salut Forum (et tous ceux qui y participent)

Dans un fichier qui gère des horaires, j'aimerais que les colonnes qui affichent les 29 février se masquent automatiquement si l'année sélectionnée sur la page d'accueil n'est pas bissextile.
Cela devrait donner quelque chose comme:
Si la feuille février cellule AE3 est égale à 1 (premier mars) alors masque les colonnes AE, BN et CX, sinon affiche les.
Un cador du VBA pourrait-il faire cette traduction pour le béotien que je suis?

D'avance merci. Et bonne journée.

Pierre
 
V

Vériland

Guest
re...

Ah ok c'est Excel 97...bon ben va falloir rajouter des selects un peu partout alors...lol

Tiens juste pour la forme est-ce que cette procédure fonctionne bien avec ta version ?

Sub Bouton_Janvier()
Application.Goto Reference:=Sheets("Feuil2").Range("A33"), Scroll:=True
End Sub


En fait c'est la même chose qu'un Hyperlien mais qui te renvoie vers un signet d'une feuille par le biais d'un bouton...

ah pi tiens...le mieux serais de tester concrètement...je te joins un p'tit fichier ici et tu me dis ce qui cloche ou pas avec ton Excel...ça m'évitera de ballader ton gros prog pour l'instant...lol

A+Veriland.gif


PS : Macro à copier depuis le forum auquel cas tu risques d'avoir les attributs gras du post dedans...
 

Pièces jointes

  • Fichier_test_97.zip
    10.5 KB · Affichages: 36
P

Pierre

Guest
Salut Vériland,

Tout cela marche parfaitement sur Excel 97...Pas la moindre anicroche.
Tu penses quoi du MsgBox avec bouton à cliquer du style
"[l'année introduite] est une année bissextile. Le fichier va adapter les grilles horaires. Cliquez sur OK"?

@+

Pierre
 
V

Vériland

Guest
Bonsoir Pierre et toi le Forum,

Voilà me revoiloù...lol...j'ai pas pu me dégager plus tôt car en dehors du forum j'ai un métier...lol...
mais je reviens avec plaisir...
smiley_651.gif


Déjà, c'est une bonne nouvelle de savoir que tout fonctionne bien chez toi avec Excel 97...la première étape est résolue...loool

Maintenant pour la deuxième étape, je te propose d'aller plus loin avec ce nouveau fichier où j'inclue le principe que tu souhaites : à savoir enclencher un MsgBox avec bouton à cliquer...

C"est une bonne idée...Mais bon...pour être clair, il ne s'agit pas d'une MsgBox mais plutôt d'un Userform...c'est plus souple...

Donc si ton Excel 97 accepte les différentes procédures (j'croise les doigts...lol), et si cela te convient, on pourra adapter sans difficulté ce code dans ton prog...

pas de bla bla, le mieux est de tester...
lol_05.gif


A suivre...

A+Veriland.gif
 

Pièces jointes

  • Fichier_test_97_02.zip
    19.4 KB · Affichages: 39
P

Pierre

Guest
YESSSSS!

Super ca marche... enfin ici j'espère qu'au boulot demain ce sera pareil...
C'est génial, "yapluka" adapter tout ça au fichier (Et comment on fait pour étendre jusqu'à l'année 2020 dans le usrfrom, je suis optimiste je sais...)

Je te suis grandement redevable, Vériland, grand merci.

En attendant la suite...
Je te souhaite une excellent soirée.


Pierre
 
V

Vériland

Guest
Re,

Ah ben çà c'est une question très dure...

...jusqu'en 2020 ?...
smiley_289.gif


ben c'est pas possible à faire...
smiles_79.gif



















































mais non j'plaisante...

tu peux même aller jusque 3000 si tu veux...(hyper lool)...
smiley_471.gif




il te suffit pour cela de changer la variable i dans l'initialisation de l'userform...

Private Sub UserForm_Initialize()
ComboBox1.Value = Range("An").Value
Dim i As Integer
For i = 2000 To
3000
ComboBox1.AddItem i
Next i


cette procédure se trouve dans le code de l'Userform...pas dans le module...dans l'userform...Alors pour y accéder tu fais clic droit sur l'userform SelectAnnee et tu cliques sur Code dans la fenêtre qui s'affiche...

Bon ben j'crois que pour appliquer l'ensemble de cette procédure dans ton prog tu n'auras pas de difficulté...je te laisse faire pour l'instant...un simple copier coller du module et de l'userform devrait faire l'affaire...mais si tu as un problème n'hésite surtout pas à faire appel...

Voilà bonne programmation
smiley_235.gif


A+Veriland.gif
 
P

Pierre

Guest
Salut Foum et Vériland,


Le changement me semblait simple à faire pour les années, mais hier à la maison, ca ne marchait pas (pas possible de modifier les dates dans le code?)
Ici pas de problème, Ouf...je suis moins simplet que je ne croyais...:eek:))
Je me lance dans l'adaptation, et je dis quoi après.
 
P

Pierre

Guest
YAHOOOOOOO,

Tout cela marche parfaitement. Après de nombreuses heures de recherche (pour moi) et de travail (pour Vériland), j'ai enfin finalisé mon projet de grille horaire.
Il ne me reste plus qu'à l'envoyer à des bêta-testeurs avant sa publication.

Très grand merci à toi Vériland ainsi qu'à tous ceux qui ont mis leur grain de génie dans cette petite application (Ti, Monique, Celeda, Joley,....)

@+
 

Discussions similaires