Report de données sur une autre feuille

Bonjour

Voilà mon souci :

Je veux reporter des données d'une feuille vers une autre, exemple sur la feuille 2015-2016 j'ai fourni des valeurs dans le mois d'août 2016, je vais dans la feuille 2016-2017 et je clique sur le bouton "Report" normalement le report de 2016 devrait se faire sur la feuille 2016-2017, mais voilà le message d'erreur n'indique que la feuille 2016 n'existe pas. Si je renomme chaque feuille avec seulement une année soit 2016, 2017 ,2018, etc .... cela fonctionne. Donc il y a un manque dans ma macro VBA, mais ou

Je joins le fichier .

Mais voici la macro "Report" :

Option Explicit

Dim annee

Sub Report()
    Dim annee As String
    annee = Range("L2")
    On Error GoTo PasDeFeuille
    Sheets(CStr(annee)).Range("AM6:BV34").Copy Range("B6")
Exit Sub

PasDeFeuille:
    MsgBox "Le report ne peut être fait car la feuille " & annee & " n'existe pas.", vbOKOnly
End Sub

Bonsoir,

On recherche le nom de l'onglet en fonction de la cellule "L2".

Actuellement, dans l'onglet "2016-2017", cellule "L2", on a 2016.

=> à remplacer par 2015-2016 pour que cela corresponde.

Cf PJ à tester (pas de modification du code VBA)

Bonne soirée

Bouben

Je te remercie effectivement cela fonctionne, mais ce n'est pas ce que je recherche.

Car sur chaque feuille il y a deux années "Année précédente" et "Année en cours" et je tiens absolument à garder cette dénomination pour bien distinguer les années.

Bonsoir,

Il faudrait commencer par savoir ce que tu fais :

1) Range("L2") : de quelle feuille ? On a le choix !

2) Aucune cellule L2 ne contient un nom d'une de tes feuilles !!

3) Faire un report d'une feuille sur une autre implique deux feuilles... !!!

4) La prochaine fois ! après règlement des questions préalables !

Cordialement.

Re-

Mon précédent message était l'explication du problème. Forcément, cela ne peut pas fonctionner en gardant ce principe (cf MFerrand)

Si on veut rechercher dans l'onglet "2015-2016" à partir de la zone "2016", il faut ajouter le "2015- " quelque part.

Ci-joint une proposition de résolution du problème, à tester.

 annee = CInt(Range("L2") - 1) & "-" & Range("L2")

Bonne soirée

Bouben

Je te remercie c'est exactement ce que je rechercher. J'avais étudié cette piste mais je ne sais pas pourquoi j'ai rajouté 1 au lieu de soustraire. Encore merci.

Salut Bouben !

Déjà fini donc. Bon ! A+

Hello MFerrrand,

A priori oui ! On se reverra sans doute sur d'autres sujets ...

Bouben

Rechercher des sujets similaires à "report donnees feuille"