Excel formule dans nom de feuille?
Résolu
Beeloobop
Messages postés
63
Date d'inscription
Statut
Membre
Dernière intervention
-
-
-
Bonjour,
Savez-vous s'il est possible de mettre une formule dans un nom de feuille dans excel 2007?
Je voudrais pouvoir nommer mes feuilles automatiquement avec le contenu d'une cellule.
Merci!
Beeloobop
Savez-vous s'il est possible de mettre une formule dans un nom de feuille dans excel 2007?
Je voudrais pouvoir nommer mes feuilles automatiquement avec le contenu d'une cellule.
Merci!
Beeloobop
A voir également:
- Excel formule dans nom de feuille?
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
7 réponses
Bonjour,
Non tu ne peux pas mettre de formule dans les nom de page.
Tu pourrais éventuellement créer une macro a cet effet.
Cordialement
Patrice
Non tu ne peux pas mettre de formule dans les nom de page.
Tu pourrais éventuellement créer une macro a cet effet.
Cordialement
Patrice
Alors deja faudra ecrire ce code dans "thisWorkbook"
Sub workbook_open()
Show.inputbox
End Sub
Alors tu te crées une inputbox sous forme de Userform.
http://dj.joss.free.fr/usf.htm (Site qui explique bien toutes les options et comment les utiliser)
Ensuite, tu te frabriques deux TextBox genre "nombox" et "prenombox"
Tu te crée un bouton "Ok" en CommandButton et tu l'appelles "okbutton" par exemple.
Tu ouvres le code de la userform, et tu mets ceci :
Private Sub ajout_Click()
Application.ScreenUpdating = False
'Vérifie si les cases sont bien remplies
If nombox = "" Then
MsgBox "Veuillez entrer un nom." ,vbExclamation
Exit Sub
End If
If prenombox = "" Then
MsgBox "Veuillez entrer un nom." ,vbExclamation
Exit Sub
End If
ininom = Gauche(nombox,1)
iniprenom = Gauche(prenombox,1)
Sheets("fin").visible = true
Do until activesheet.name = fin (là faudra que tu cré une feuille de fin nommée "fin" pour pouvoir faire une boucle :> solution temporaire, sinon j'ai pas d'idée)
if activesheet.name = "" & ininom & " " & iniprenom & "" then
MsgBox ("Bonjour " & nom & " " & prenom & ", vous pouvez continuer à rentrer vos données. ")
Exit sub
end if
Loop
Sheets.Add
ActiveSheet.Name = "" & ininom & " " & iniprenom & ""
MsgBox ("Bonjour " & nom & " " & prenom & ", voici une nouvelle veuille de données pour vous. ")
Sheets("fin").visible = False
Application.ScreenUpdating = True
End Sub
Essaye et dis moi ce qu'il en est :)
Sub workbook_open()
Show.inputbox
End Sub
Alors tu te crées une inputbox sous forme de Userform.
http://dj.joss.free.fr/usf.htm (Site qui explique bien toutes les options et comment les utiliser)
Ensuite, tu te frabriques deux TextBox genre "nombox" et "prenombox"
Tu te crée un bouton "Ok" en CommandButton et tu l'appelles "okbutton" par exemple.
Tu ouvres le code de la userform, et tu mets ceci :
Private Sub ajout_Click()
Application.ScreenUpdating = False
'Vérifie si les cases sont bien remplies
If nombox = "" Then
MsgBox "Veuillez entrer un nom." ,vbExclamation
Exit Sub
End If
If prenombox = "" Then
MsgBox "Veuillez entrer un nom." ,vbExclamation
Exit Sub
End If
ininom = Gauche(nombox,1)
iniprenom = Gauche(prenombox,1)
Sheets("fin").visible = true
Do until activesheet.name = fin (là faudra que tu cré une feuille de fin nommée "fin" pour pouvoir faire une boucle :> solution temporaire, sinon j'ai pas d'idée)
if activesheet.name = "" & ininom & " " & iniprenom & "" then
MsgBox ("Bonjour " & nom & " " & prenom & ", vous pouvez continuer à rentrer vos données. ")
Exit sub
end if
Loop
Sheets.Add
ActiveSheet.Name = "" & ininom & " " & iniprenom & ""
MsgBox ("Bonjour " & nom & " " & prenom & ", voici une nouvelle veuille de données pour vous. ")
Sheets("fin").visible = False
Application.ScreenUpdating = True
End Sub
Essaye et dis moi ce qu'il en est :)
Bonjour,
Tu peux faire un bouton pour créer des nouvelles feuilles ayant le nom contenu dans une cellule, je ne sais pas dans quel condition tu souhaites faire ceci mais bon, si ça peut t'aider.
Sub newfeuille()
Sheets.Add
ActiveSheet.Name = Sheets(Nomfeuille).Range("A1").Value
End Sub
Un truc dans ce genre là...
Tu connais un peu le VBA et les macros ?
Tu peux faire un bouton pour créer des nouvelles feuilles ayant le nom contenu dans une cellule, je ne sais pas dans quel condition tu souhaites faire ceci mais bon, si ça peut t'aider.
Sub newfeuille()
Sheets.Add
ActiveSheet.Name = Sheets(Nomfeuille).Range("A1").Value
End Sub
Un truc dans ce genre là...
Tu connais un peu le VBA et les macros ?
Merci pour cette réponse claire et précise Patrice :)
Pour LeDénicheur, oui je m'y mets petit à petit tellement c'est utile et pratique!
Le code que tu m'as donné me parait tout adapté à la suite que je veux donner à mes affaires!
En gros :
Au jour J, l'utilisateur ouvre excel
Une inputbox apparait "quel est votre nom?"
Une 2e inputbox apparait "quel est votre prénom?"
Et avec ces deux questions création par vba d'une feuille portant ses initiales (d'où ton code :) )
Puis un tas d'autres inputbox pour entrer d'autres diverses données dans cette même feuille.
Au jour J+1, l'utilisateur ouvre excel
Une inputbox apparait "quel est votre nom?"
Une 2e inputbox apparait "quel est votre prénom?"
Et il doit pouvoir retrouver la feuille correspondante pour continuer d'ajouter les données à la suite des autres.
Bref je vais pas raconter ma vie tout de suite, à mon avis je vais revenir un peu sur ce forum pour demander votre précieuse aide ;)
Merci encore !
Pour LeDénicheur, oui je m'y mets petit à petit tellement c'est utile et pratique!
Le code que tu m'as donné me parait tout adapté à la suite que je veux donner à mes affaires!
En gros :
Au jour J, l'utilisateur ouvre excel
Une inputbox apparait "quel est votre nom?"
Une 2e inputbox apparait "quel est votre prénom?"
Et avec ces deux questions création par vba d'une feuille portant ses initiales (d'où ton code :) )
Puis un tas d'autres inputbox pour entrer d'autres diverses données dans cette même feuille.
Au jour J+1, l'utilisateur ouvre excel
Une inputbox apparait "quel est votre nom?"
Une 2e inputbox apparait "quel est votre prénom?"
Et il doit pouvoir retrouver la feuille correspondante pour continuer d'ajouter les données à la suite des autres.
Bref je vais pas raconter ma vie tout de suite, à mon avis je vais revenir un peu sur ce forum pour demander votre précieuse aide ;)
Merci encore !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Juste pour info (enfin pour le moment en tout cas, j'approche de la limite d'exlposion de mon cerveau, j'ai passé 2h à faire ça en macro, et depuis 2h je me suis aperçue que, oui les userform seraient vachement plus adaptés... Mais je n'ai absolument jamais utilisé ces choses étranges...)
J'ai mis ça au lieu de ta première petite macro (avec la tienne ça ne lançait rien du tout??)
Sub Lance()
Load UserForm1
UserForm1.Show
End Sub
Et j'ai mis le code que tu m'as donné sous :
Private Sub UserForm_Click()
Mais ça plante. ça rame à fond, je suis obligée de quitter excel en le plantant. J'ai pas vu de créatin d'une nouvelle feuille. J'ai pas du mettre le code au bon endroit...
D'ailleurs, c'est pour faire quoi? ça met à jour le fichier excel après les modif?
Application.ScreenUpdating = False (ou true)
Le site que tu as mis en lien est d'enfer, je crois que je vais me pencher la dessus!
Merci encore!
J'ai mis ça au lieu de ta première petite macro (avec la tienne ça ne lançait rien du tout??)
Sub Lance()
Load UserForm1
UserForm1.Show
End Sub
Et j'ai mis le code que tu m'as donné sous :
Private Sub UserForm_Click()
Mais ça plante. ça rame à fond, je suis obligée de quitter excel en le plantant. J'ai pas vu de créatin d'une nouvelle feuille. J'ai pas du mettre le code au bon endroit...
D'ailleurs, c'est pour faire quoi? ça met à jour le fichier excel après les modif?
Application.ScreenUpdating = False (ou true)
Le site que tu as mis en lien est d'enfer, je crois que je vais me pencher la dessus!
Merci encore!