Récupérer valeur cellule de la feuille précédente et lui ajouter une valeur

JVOS

XLDnaute Junior
Bonjour à Tous
Je suis débutante et je bute sur un élément qui paraîtra surement très simple, voici ma macro :
Sub Nvlle_Feuille()
Sheets(1).Copy Before:=Sheets(1)
ActiveSheet.Name = "S"
Range("I3:AO50").Select
Selection.SpecialCells(xlCellTypeVisible).ClearContents
Selection.Interior.Color = xlColorIndexNone
Range("BB3:BD50").ClearContents
ActiveSheet.Range("I2").Value = ActiveSheet(Index - 1).Range("I2").Value + 7
End Sub

La ligne en gras est censé en "I2" de la nouvelle feuille récupérer la valeur de "I2" de la feuille précédente + 7

Merci pour votre aide
 

JVOS

XLDnaute Junior
Rebonjour à Tous
Décidément j'ai encore besoin de vous...
Comme je dois aussi utiliser la formule
=SOMMEPROD(SOMME.SI(INDIRECT("'"&Semaines&"'!A:A");[@[NOM PRENOM]];INDIRECT("'"&Semaines&"'!BH:BH")))
dans mon onglet PERSONNEL! et que pour ça il faut que"Semaines" soit definie seulement avec les onglet presents dans le fichier...
Serait il possible que à chaque fois que la nouvelle feuille est créée cela me crée aussi son nom dans un tableau qui se trouverait à partir de T3 dans l'onglet PERSONNEL pour tenir à jour "Semaines"

Merci d'avance

Je rappelle la création de mes feuilles :

Sub Nvlle_Feuille()
Dim BE As Variant
Dim I As Integer

ici:
BE = Application.InputBox("Entrez le nom du nouvel onglet, type S+n°semaine-année ex. S25", "NOM", Type:=2)
If BE = False Or BE = "" Then Exit Sub
For I = 1 To Sheets.Count
If LCase(BE) = LCase(Sheets(I).Name) Then
MsgBox "Un onglet portant ce nom existe déjà, veuillez recommencer !"
GoTo ici
End If
Next I
Sheets(1).Copy Before:=Sheets(1)
ActiveSheet.Name = BE
With Range("I3:AO50").SpecialCells(xlCellTypeVisible)
.ClearContents: .Interior.Color = xlColorIndexNone
Selection.ListObject.Name = "T_" & BE
End With
Range("BB3:BD50").ClearContents
Range("I2") = Range("I2") + 7
End Sub
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil

Juste pour info
Si la norme de nommage est S+N°semaine =>S25 par exemple
alors lance cette macro pour voir pourquoi j'ai ainsi nommé cette macro de test ;)
VB:
Sub BizarreLogique()
BE = "S25"
MsgBox LCase(BE)
EB = "S25"
MsgBox UCase(EB)
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 248
Messages
2 086 593
Membres
103 248
dernier inscrit
Happycat