Nom onglet

Bonjour à tous,

Je désire créer automatiquement un onglet portant le nom d'une des cellules de la feuille.

Qu'elle serait pa procèdure

Merci d'avance

Amicalement

Noel

Bonjour

Noël, depuis que tu fréquentes le Forum, tu devrais connaître la fonction Rechercher sur le forum...

Nommer l'onglet selon la valeur de C6

Code de feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Name = Range("C6").Value
End Sub

Cordialement

Bonjour,

Et si l'onglet existe déjà?

Où place-t-on le nouvel onglet?

Comment comptes-tu le créer? (bouton, changement d'une valeur.....)

Bref....(mais à bientôt 1000 posts.....)

Bonne journée

Re,

Bonjour Cousinhub,

Je suis désolé, j'ai entamé une recherche je ne l'ai pas trouvé c'est pour ça que j'ai ouvert le fil

Excuse moi.

Merci de ton aide

Amicalement

Noel

Re-,

Euh, oui, bonjour...

Mais encore?

Tu ne réponds pas à mes questions (peut-être pertinentes, peut-être pas....)

Bref, cela ne nous avance pas....

bonne journée

Bonjour à tous,

Bonjour CousinHub,

Je n'ai pas pui réponbdre à toutes tes questios parceque tout d'abord j'étais sur ne bécanne qui m'appartenait pas et puis il fallait que je commençais par analyser tes questions.

1 Où place-t-on le nouvel onglet? En dernier

2 Comment comptes-tu le créer? par un bouton qui imprime, qui efface des données pour rendre la feuille de saisie vierge et crée bien entendu la feuille avec le nom de la personne qui se trouve en H13

Merci de ton aide

Amicalement

Noel

Bonjour,

Pourquoi ne pas avoir un fichier "modèle", qui serait vierge, et placé dans le même répertoire que ton fichier de travail?

Ensuite, avec ce code, tu rajoutes une feuille à la fin, cette feuille sera un modèle vierge...

Sheets.Add Type:=ActiveWorkbook.Path & "\modele.xls", _
           After:=Sheets(Sheets.Count)

Il faut donc que tu aies un classeur nommé "modele.xls" (ou xlsx, comme tu veux), ce classeur n'ayant qu'un onglet, cet onglet étant un formulaire vierge...

Pour le renommer, Amadéus t'a donné la solution

Re,

Je ne comprends pas trop, ce que tu me demandes de faire.

J'essaye de comprendre : Pourquoi ne pas avoir un fichier "modèle", qui serait vierge, et placé dans le même répertoire que ton fichier de travail?. Si j'ai bien compris tu me demandes de créer un classeur nommé modèle que je le placerai dans le répertoire où se trouve mon fichier actuel. Travaillant sur mon fichier où dois-je placer le code dans le fichier de saisie ou dans le fichier modèle?.

Ma demande c'est que dans mon fichier travail après saisie je clique sur un bouton impression et qu'il me crée une feuille avec le nom de la personne, même si c'est dans un autre fichier pas de problème je pense que cela allègerai mon projet.

A te relire bientôt

Amicalement

Noel

Re-,

Effectivement, tu crées un nouveau fichier, avec une feuille de saisie vierge

Tu nommes ce fichier "modele.xls" (ou .xlsx), et tu peux laisser ce fichier fermé (pas besoin de l'ouvrir)

PS, pense à modifier le code, si tu mets .xlsx...

Tu mets ce code dans ton fichier de saisie, et quand tu le déroules, un nouvel onglet va s'ajouter à la fin, et tu pourras y mettre tout ce que tu veux...

Re,

Le temps d'essayer tout ça et je te tiens informé de la suite.

Merci

Amicalement

Noel

-- Jeu Nov 11, 2010 5:24 am --

Bonjour à tous,

Bonjour CousinHub, Amadeus,

Avec un peu de retard que je reviens vers vous. Javais un peu de mal avec le PC.

Je vous transmets les 2 fichiers nommé GestAuto et Modele.xls

J'ai un souci je n'arrive toujours pas avec les codes, ils ne créent pas ma feuille avec le nom.

CousinHub le code que tu m'as remis, je ne sais pas si j'e l'ai positionnée à la bonne place.

Merci de voir où le bas blaisse.

Amicalement

Noel

Bonjour,

Euh, c'est un code d'évènement de feuille que tu veux, et non un évènement de classeur...

Fais un clic droit sur le nom de l'onglet, "Visualiser le code", et colle ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address = "$H$13" Then
    If Target <> "" Then
        Sheets.Add Type:=ActiveWorkbook.Path & "\modele.xls", _
           After:=Sheets(Sheets.Count)
        With ActiveSheet
            .Name = Target
            .[H13] = Target
            .[H14] = Date
        End With
    End If
End If
End Sub

Bonne journée

Bonsoir,

en lisant ton fil depuis de début, est-ce qu'une solution ne serait pas celle-ci :

  • Tu complètes ta feuille TRVX
  • Lorsque tu imprimes, plutôt que de dupliquer ta feuille dans le fichier "Gesauto", tu la copies dans un nouveau fichier
  • Tu nommes ce nouveau fichier avec la date par exemple
  • on sauve ce nouveau fichier dans un répertoire de ton choix, puis on le ferme automatiquement
  • ensuite on efface toutes les données dans la feuille TRVX du fichier "Gesauto" et on incrémente ton N° de bon en B10.

Dans cette proposition, ta feuille TRVX reste toujours le modèle et chaque feuille de travail est sauvegardée dans un fichier séparé.

A te relire

Bonjour à tous,

Bonjour Dan, CousinHub, Amadeus,

Mon cher Dan, je pense que tu as bien cerné ma demande.

Ma feuille "TRVX" étant mon modèle il s'avère que our le moment je crée une feuille dans mo fichier qui à la fin du temps alourdirai ce dernier. CousinHub avait bien compris mais je suis resté sur ma dernière solution.Dans ma tête la feuille "Trvx" était mon modèle, alors que CousinHub m'avait demandé de créer un fichier nommé Modèle et têtue comme je suis le mot Modèle ne m'est pas venu à l'esprit c'est dans ce fichier que je devais installer le code. Je m'excuse.

Je constate qu'au sein du forum vous êtes une équipe formidable qui arrive à trouver de solutions au quelle on ne pense pas systématiquement.

Merci encore de votre bonne volonté et de la patiente que vous vous accordez à me venir en aide.

J'attends peut-être trop de votre part mais étant dure de la feuille, je compte beaucoup sur vos compétences.

Amicalement

Noel

Bonsoir,

Cousinhub et Amadeus t'ont proposé une direction. En attendant leur retour sur ce fil, vois le fichier joint avec ma proposition qui ne concerne que la feuille TRVX.

En cliquant sur le bouton "Imprime" les actions sont :

  • Impression de ta feuille
  • Sauvegarde de ta feuille dans un nouveau fichier
  • Sauvegarde du nouveau fichier dans le même répertoire que le fichier "Gestauto". Le nom du fichier sera --> "date-N° de commande_nom acheteur". Pour ce nom j'ai placé des tests pour contrôler que toutes les cellules importantes sont bien complétées. Dans le cas contraire un message t'en informera; le code sera arrêté et le fichier non sauvegardé
  • Remise à zéro de la feuille TRVX et incrémentation du N° de commande.

Amicalement

10gestauto-v1.zip (702.66 Ko)

Bonjour à tous,

Bonjour Dan,

Merci pour ton aide.

Sur MAC ça fonctionne très bien mais sur PC le nom du fichier donné seul la date ne correspond pas il me donne comme résultat 20061111-etc... alors que nous sommes en 2010.

Comme tu as pu voir j'ai d'autres feuilles du même type à réaliser presqu'à l'identique, Je souhaiterai que devant la date que je puisse rajouter pour Trvx "CT" pour loc "LOC" etc....

Je vais me mettre à partir de ton code truver la solution pour rajouter les sigles.

Merci beaucoup de ton aide

Amicalement

Noel

Re,

le nom du fichier donné seul la date ne correspond pas

exact mais cela est dû au calendrier 1904. Va dans Outils / options --> Onglet Calcul et décoche la case 1904. Refais quelques essais.

Je souhaiterai que devant la date que je puisse rajouter pour Trvx "CT" pour loc "LOC" etc....

Ce n'est pas une bonne idée car tu auras tous les CT en premier et LOC en deuxième.

Pour ma part je laisserais la date en premier, cela sera plus facile pour retrouver tes fichiers. Cela dépend comment tu veux consulter les archives bien sûr.

Concernant ta demande comment on voit CT ou LOC dans la feuille Trvx ?

Autre chose il y a plein d'objets dessins sur ta feuille. Pourquoi tu ne mets pas cela dans des cellules ?? Exemple en base de page les "oui" "non" etc... Cela met toujours le souc à un moment donné ces objets. Essaie de remanier ta feuille pour les éviter au maximum.

A te relire

Re,

Pour la date, j'ai décoché 1904.

Pour CT ou LOC c'est vrai je l'ai fait j'ai mis après la date

Je m'attacherai à remanier ma page.

Je te remercie beaucoup

@+

Amicalement

Noel

Rechercher des sujets similaires à "nom onglet"