Macro nom onglet selon cellule

Masto

XLDnaute Nouveau
Bonsoir à tous;

Je suis en train de bricoler une base de données avec mes petites connaissances.
Le principe est que lorsque j'ajoute un patient dans ma feuille "DONNEES", je crée une fiche correspondant au patient en copiant la feuille "MODELE", et en inscrivant le numéro du patient dans la case verte de la fiche patient.

Le problème vient de ma macro censée nommer la feuille selon le numéro du patient inscrit dans la case verte.
Au moment ou je copie la feuille "MODELE" puis que je tente d'inscrire le numéro du patient dans la case verte, c'est la crise.

Quelqu'un peut-il me donner la solution svp ?
Et puisque j'y suis, n'auriez vous pas une macro permettant de classer les feuilles dans l'ordre croissant (et tolérant des feuilles avec des noms en lettres).

Merci!
Masto
 

Pièces jointes

  • Base données.xls
    39 KB · Affichages: 156
  • Base données.xls
    39 KB · Affichages: 155
  • Base données.xls
    39 KB · Affichages: 163

skoobi

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

Bonsoir,

Je te propose de passer plutôt par une macro évenementielle "feuille change" au lieu de "sélection dans feuille change":

Code:
 Private Sub Worksheet[B][COLOR="Red"]_Change[/COLOR][/B](ByVal Target As Range)
If Intersect(Target, Range("h2")) Is Nothing Then: Exit Sub
ActiveSheet.Name = Target[COLOR="Red"][B].Value[/B][/COLOR]
End Sub

Edit:
Et puisque j'y suis, n'auriez vous pas une macro permettant de classer les feuilles dans l'ordre croissant (et tolérant des feuilles avec des noms en lettres).

fais une recherche sur "trier feuilles"
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

Bonjour à tous,

Un essai avec ce que j'ai compris.

La feuille "Modèle" se masque pour éviter l'effacement non désiré
La feuille "Data" : Mettre les noms en B4 et suivant ET SANS VIDE, le muméro de dossier se met automatiquement

Un clique sur le GO et les feuilles se créent et se trient.

A+

Edition : Salut Skooby :). Trop rapide le bougre

Edition 2 : Salut PJ
Je change le fichier, notre ami avait mis des Selection... un peu partout et cela créait des soucis à l'ouverture. J'aurais pu regarder partout...
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

bonjour Masto

Salut Skoobi

Salut JC

Comme les carabiniers !!!
mais puisque c'est fait

edit: JC
ptit probleme :Feuille Donnees devenue Data -> bug a workbook_open
puis feuille Modele masquée (pas de nouveau client ?)
ensuite pas de Parkinson sur le bouton Go sinon plethore de feuilles

ça me fait penser que moi je n'ai pas protégé contre un N° deja pris, je regarde demain
 

Pièces jointes

  • base de données.zip
    29.3 KB · Affichages: 77
  • base de données.zip
    29.3 KB · Affichages: 85
  • base de données.zip
    29.3 KB · Affichages: 74
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

Bonjour à tous,
Salut PJ :),

J'ai redéposé le fichier pour le bug à l'ouverture.
Pour la feuille "Modèle"..., elle n'est qu'un Modèle, les data sont en feuille "Data".

Pour ton "Parkison" arf, penses-tu qu'une événementielle sur B serait plus adaptée ?

A+ mon ami
A+ à tous
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

bonjour tous

Salut JC :)

Voila mon fichier qui ne boguera pas si on veut rajouter une feuille existante

et le tien avec egalement une securité permettant de ne creer que les nouvelles feuilles necessaires

les 2 sont traités differement

Masto aura le choix (a moins qu'il n'ait deja tout resolu )
 

Pièces jointes

  • base de données.zip
    29.3 KB · Affichages: 118
  • base de données.zip
    29.3 KB · Affichages: 117
  • base de données.zip
    29.3 KB · Affichages: 114
  • Base données_JCGLb.zip
    15.9 KB · Affichages: 168

Masto

XLDnaute Nouveau
Re : Macro nom onglet selon cellule

Un grand merci à tous!

Je n'ai pas tout résolu, et vos améliorations sont les bienvenues. Là où j'essaie de bricoler, vous m'apportez des solutions "macrotuesques" ! Mais je progresse petit à petit notamment grace à vous et ce forum.

Excel est vraiment un outil génial, Pierrejean tu m'avais déjà aidé pour une macro énormissime de répartition de différents produits dans un même lot avec écart maximal de 1 entre les lots... je m'en sers très souvent.

Merci encore
Masto
 

keul

XLDnaute Nouveau
Re : Macro nom onglet selon cellule

Bonjour à tous, je suis débutant sous vba. Je viens d'acheter un livre concernant la programmation des macros. Je cherche une macro permettant d'ouvrir une feuille (ou onglet) suivant le texte inscrit dans une cellule ou encore ajouter une feuille et qui se nomme comme le texte inscrit dans cette cellule.
Merci à tous de votre compréhension.
 

pierrejean

XLDnaute Barbatruc
Re : Macro nom onglet selon cellule

bonjour keul

Voila une macro commentée qui devrait faire ce que tu souhaites

Code:
Sub test()
'on verifie tous les noms de feuille
For n = 1 To Sheets.Count
' Si une feuille a deja le nom qui est dans la cellule A2
'de la feuille1
 If Sheets(n).Name = Sheets("Feuil1").Range("A2") Then
 'on la selectionne
   Sheets(n).Select
 ' et on sort de la macro
   Exit Sub
 End If
Next n
'si on n'est pas sorti apres avoir controlé toutes le feuilles
'on crée une nouvelle feuille que l'on nomme dans la foulée
  Sheets.Add.Name = Range("A2")
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 763
Messages
2 091 841
Membres
105 077
dernier inscrit
Airnee