XL 2010 VBA; ouvrir une feuille en fonction d'une case

Kaerbran

XLDnaute Nouveau
Bonjour Messieurs et Mesdames,

A la fin de ce vieux sujet, je m'étais permis de formuler une question: https://www.excel-downloads.com/thr...aleur-de-la-cellule-par-une-macro-vba.190199/ .

Bon, comme je souhaite respecter un tant soit peu l'organisation du forum, je vais reformuler ma question et me représenter.

Mon problème:

1) Je souhaite en fonction de l'année écrite dans une case, travailler dans une feuille comportant exactement le même nom. Et ceci dans une macro (bien entendu).

Petit exemple:

L'année se trouve admettant dans cette case: Sheets("Donnees).Cells(1, 23).Value /* Cette année est crée à l'aide de la fonction ANNEE(MAINTENANT())

Puis j'ai fait dans la même macro un copiage spécial pour ne plus qu'avoir l'année en date mais plutôt en chiffre. Bref comme vous pouvez le constater j'ai un peu rusé et triché ;). */

--> Cette dite année est 2015 dans notre cas. Et la feuille est nommée "2015". Je pensais donc que pour travailler dans cette feuille, il me suffisait d'écrire la ligne suivante:

Sheets("Sheets("Donnees).Cells(1, 23).Value").UNECASE.Value=... une opération

// Bref je suis bloqué au niveau de la partie soulignée et en gras ;)



2ème problème:

Code:
If EntrerNouvelleAlerte.ComboBoxGravite.Value = "S" Then
    Sheets("2015").Cells(58, (Cells(82, 5).Value + 1)).Value = Sheets("2015").Cells(58, (Cells(82, 5).Value + 1)).Value + 1
    Sheets("2015").Cells(91, 2).Value = "S"
End If

J'ai voulu écrire cette ligne de code... Mais je me rend compte qu'elle ne fonctionne pas... Je voulais donc savoir si c'était en raison de la ComboBox que j'utilisait mal?

Ci-joint je vous ai lié mon excel. J'ai supprimé deux trois trucs et essayé d'y mettre le plus de commentaires que possible... Mais je ne sais pas si vous allez réussir à comprendre ma pensée...

---------------------EXPLICATION DE L'EXCEL------------------------------------

Pour vous explique brièvement mon Excel: sur les feuilles "2015" et "2016" et "2017" et etc... se trouve un petit bouton qui me permet de rentrer des valeurs. Toutes les valeurs rentrées, rentrent systématiquement dans la feuille "données", mais également dans la feuille de l'année de la date d'entrée de l'alerte. Sur la feuille de l'année de la date d'entrée de l'alerte, j'incrémentes des tableaux en fonctions des entrées.

Bon bref... Je me rends compte à quel point c'est mal expliqué et je commence à avoir honte...

Je vous joins quand même mon Excel dans l'espoir que vous puissiez comprendre quelque chose.


---------------------------IMPORTANT-----------------------------------------------

A noté, que j'ai réussi à résoudre mon premier problème qui était d'avoir un format purement de chiffres à partir d'une date! Et ceci grâce à l'aide de "Modeste" et de ses compères.

En vous remerciant d'avance,

Cordialement,

un internaute dans le besoin.
 

Pièces jointes

  • TestKaerbran.xlsm
    74.5 KB · Affichages: 54

Modeste

XLDnaute Barbatruc
Re : XL 2010 VBA; ouvrir une feuille en fonction d'une case

Bonjour Kaerbran, Pierrot :)

Chez moi, je dois écrire:
Code:
Sheets("" & Sheets("Donnees").Cells(1, 26).Value).Activate
... pour que ça fonctionne. La cellule Z1 contient une formule: =ANNEE(X1) (X1 affichant elle-même la date du jour)


Si on n'a pas besoin de faire figurer l'année dans la feuille de calcul, on peut aussi écrire:
Code:
Sheets("" & Year(Date)).Activate
ou
Code:
Sheets(Format(Date, "yyyy")).Activate
 

Discussions similaires

Réponses
5
Affichages
270

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 812
dernier inscrit
abdouami