IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA-E]création feuille en fonction données d'1 col.


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 36
    Points : 23
    Points
    23
    Par défaut [VBA-E]création feuille en fonction données d'1 col.
    Bonjour à tous!

    Voilà j'ai un fichier Excel avec une feuille "général" . Dans cette feuille, colonne A, à partir de la ligne 6, j'ai des numéros qui se suivent de 1 à xx (tout dépend de ce qui a été saisi au départ, on peut avoir de 1 à 40 ou de 1 à 35, c'est en fonction de l'utilisateur).

    Je voudrais en fait créer des onglets dans ce fichier, en fonction du nombre de cases remplies dans la colonne A à partir de la ligne 6, nommer l'onglet créé par la valeur de la cellule A6, puis A7 pour l'onglet suivant, etc.
    De plus, je voudrais que la valeur de la cellule B6 de "général" se copie dans la cellule B1 de l'onglet correspondant nommé "1" suite à sa création. Et ainsi de suite pour les autres.

    J'espère avoir été assez claire... Merci pour toute votre aide!

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    DernièreLigne = Cells(65535, 1).End(xlUp).Row
    For i = 6 To DernièreLigne
        NomFeuille = Worksheets("Feuil1").Cells(i, 1).Formula
        Sheets.Add
        ActiveSheet.Name = NomFeuille
        Cells(1,2) = Worksheets("Feuil1").Cells(i, 2).Formula
    Next
    Tu dis

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 36
    Points : 23
    Points
    23
    Par défaut
    Merci, ça fonctionne assez bien. cependant, mes onglets se créent les uns devant les autres, dans un ordre décroissant. est-il possible de les remettre dans l'ordre croissant?

    De plus,
    Cells(1,2) = Worksheets("Feuil1").Cells(i, 2).Formula
    n'a pas l'air de fonctionner. Il ne m'inscrit rien dans l'onglet créé.

    Je ne comprends pas.

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Là, je sens que tu veux rire... ou t'as pas rélféchi... Ce serait plutôt ça, non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = dernièreligne to 6 step -1
    Tu connais pas ?

    A+

    Edit
    Pour ton autre question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets(NomFeuille).Cells(1,2).formula = ....

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par Angel79
    Merci, ça fonctionne assez bien. cependant, mes onglets se créent les uns devant les autres, dans un ordre décroissant. est-il possible de les remettre dans l'ordre croissant?
    Citation Envoyé par aide en ligne excel

    Add, méthode (collection Worksheets) - Exemples

    Cet exemple montre comment créer une nouvelle feuille de calcul et comment l'insérer avant la feuille active.

    ActiveWorkbook.Worksheets.Add
    Cet exemple montre comment ajouter une nouvelle feuille de calcul après la dernière feuille du classeur actif.

    Worksheets.Add.Move after:=Worksheets(Worksheets.Count)
    Citation Envoyé par Angel79
    De plus,
    Cells(1,2) = Worksheets("Feuil1").Cells(i, 2).Formula
    n'a pas l'air de fonctionner. Il ne m'inscrit rien dans l'onglet créé.

    Je ne comprends pas.
    ? si ce que tu dois copier et dans ldans la feuille général .. remplace Feul1 par général ...

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Merci, bbil, j'avais pas vu le Général...

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 36
    Points : 23
    Points
    23
    Par défaut
    Merci bbil pour ton aide si gentille!
    j'ai repris ce que tu as indiqué pour insérer les feuilles après la dernière active.

    J'ai renommé ma feuille de base en "Général" mais le problème reste le même, le contenu de la cellule B6 de "Général" ne s'est pas recopié en B1 de la feuille créée et nommée "1".

    Et ouskel'n'or, désolée mais en ce moment je suis très fatiguée et je n'ai fait que recopier bêtement ce que tu m'avais écrit.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 36
    Points : 23
    Points
    23
    Par défaut
    non c'est bon merci, j'ai vu, j'ai corrigé avec ce que ouskel'n'or a ajouté.

    Merci bcp.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA][E-07] Création d'une fonction personnelle "IsIncluded"
    Par BME2411 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/12/2008, 10h17
  2. Réponses: 2
    Dernier message: 28/02/2008, 18h57
  3. [VBA-E] Comment faire une fonction utilsant une autre feuille
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/04/2007, 16h27
  4. [VBA-E] Création de feuille automatique
    Par matt8-5 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/01/2007, 11h59
  5. [VBA-E] Création formulaire sur feuille apparante modifiable
    Par baptbapt dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 31/08/2006, 12h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo