Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2749 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [MACRO EXCEL] créer une macro insérer des feuilles

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MACRO EXCEL] créer une macro insérer des feuilles

n°1947258
gia17
Posté le 04-12-2009 à 10:46:54  profilanswer
 

Bonjour à toutes et à tous,
 
Après de multiples recherche sur le net, je ne trouve pas de solution à mon problème. Voici ce que je veux faire :
 
-j’ai 1 fichier excel dans lequel j’ai 2 feuilles
-sur la feuille 1, j’ai 3colonnes : une colonne nom, une colonne prenom et une colonne voiture
-il y a dans la feuille 2 un certain nombre de cases à remplir pour chaque conducteur….notamment le nom, prénom, véhicule
 
Mon idée est de créer une feuille par conducteur, mais je ne sais combien de feuille je vais devoir créer car je les rajoute au fur et à mesure…
 
Je cherche à créer une macro (je ne connais pas grand chose en macro !) pour automatiser les actions suivantes :
-lorsque j’ajoute un conducteur, la macro crée une nouvelle feuille (si possible avec le nom uniquement du conducteur).
-Cette nouvelle feuille serait en réalité la copie de la feuille 2 (feuille de renseignement)
-Et pour finir (oui c’est déjà pas mal je sais lol….) sur la nouvelle feuille qui vient d’être créée, les cases nom, prénom et véhicule serait déjà remplies !
 
Je sais que c’est pas facile quand on connaît rien en macro, mais je suppose que c’est réalisable avec excel…
 
Je vous remercie par avance pour les réponses que vous pourrez apporter à mon problème….
Si vous désirez d’autre éléments plus précis de ma demande….
 
Cordialement
Gia17

mood
Publicité
Posté le 04-12-2009 à 10:46:54  profilanswer
 

n°1947634
Laoo
Posté le 06-12-2009 à 10:03:21  profilanswer
 

Bonjour  
 
Voici ce que je te propose:
 

Code :
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. Dim Maplage As Range
  3. 'si on écrit ailleurs que ds la col 4:
  4. If Target.Column <> 4 Then Exit Sub
  5.  
  6.   'si on écrit autre chose que  "ok"  ('tention les minuscules!):
  7.   If Target.Value <> "ok" Then Exit Sub
  8.  
  9.   ' on appelle temporairement      Maplage    les 3 cellules précédent le   "ok"
  10.   Set Maplage = Range(Target.Offset(0, -3), Target.Offset(0, -1))
  11.    
  12.     'on donne à la variable    LeNOM   la valeur de la cellule 3 cases avant le "ok"
  13.     LeNOM = Target.Offset(0, -3).Value
  14.            'on copie la feuille(2) à la fin du classeur    ('tention: la feuille(2) n'est pas forcément la 2° feuille  voir commentaire)
  15.            Sheets(2).Copy after:=Sheets(Sheets.Count)
  16.          
  17. 'on sélectionne la case de destination:    (bien garder "ActiveSheet" )
  18. ActiveSheet.Range("A2" ).Select
  19. 'on copie les 3 cellules de la feuille(1)
  20.    ActiveSheet.Range(ActiveCell, ActiveCell.Offset(0, 2)).Value = Maplage.Value
  21. 'en cas d'homonymes, on sort à la prochaine:
  22. On  Error GoTo fin
  23.    'on donne à cette nouvelle feuille le nom du conducteur (1ère case de "Maplage" )
  24.    ActiveSheet.Name = LeNOM
  25. fin: 
  26.    End Sub


 
Avant toutes choses:
sélectionne cette macro, fais ctrl+C
ouvre une copie de ton classeur, fais Alt+F11, clic ds VBA project (col de gauche, où il y a les modules, etc) sur feuil1(feuil1)
dans la feuille qui s'ouvre, fais ctrl+V
ENREGISTRE
donne un nom à tes 2 premières feuilles; dans la macro, remplace "Sheets(2)" par le nom de la feuille 2
ENREGISTRE ENCORE
Reviens à ton tableau en 1° feuille.
 
On considère que les 3 cell sont en A, B,C, et que quand elles sont remplies, on met "ok" en col D à la suite.  ('tention, pas "OK" !!!)
 
Et ça roule.
 
Merki ki?     :pt1cable:  
 
PS si tu es un garçon prudent, tu rajoutes une col pour le prénom, et tu prends par ex les 2 prem lettres que tu rajoutes après le nom et un espace, pr éviter une cagade dans les homonymes (et pis c'est un bon exercice...) :whistle: .
 
 
 


---------------
Olympus OM-D  EM-5 + 14-42
n°1947637
tchauoui
Posté le 06-12-2009 à 10:31:00  profilanswer
 

Laoo, tu as l'air très avancé sur les macros et ton aide me serait utile car j'ai un cas urgent à traiter pour demain matin.
Mon cas est similaire à celui de gia avec quelques différences.
Ton aide me serait précieuse.

n°1947652
Laoo
Posté le 06-12-2009 à 11:23:56  profilanswer
 

Ben vas-y, mon grand, pose ta questionnette, on va voir ce qu'on peut faire, entre la messe et le rôti...
 
 moi, pis tous les autres qui faut pas oublier, monsieur Papou, qu'est un kador, et pis ceux qui sont là ce Dimanche.
 
Mais, bien clair, la questionnette, si tu veux qu'on comprenne.  
avec classeur, lien et tout, c'est encore mieux...

n°1947653
Laoo
Posté le 06-12-2009 à 11:29:17  profilanswer
 

J'avais pas vu que tu l'avais posée au-dessus. Je regarde ça, et j'espère le papé itou.

n°1947663
seniorpapo​u
Posté le 06-12-2009 à 12:06:44  profilanswer
 

Laoo a écrit :

J'avais pas vu que tu l'avais posée au-dessus. Je regarde ça, et j'espère le papé itou.


Papou sonne mieux à mon oreille.  
Mais un minimum de sens du respect devrait t'amener à m'appeler seniorpapou (le tout en minuscule), je t'en remercie.
 
 :hello:


Message édité par seniorpapou le 06-12-2009 à 13:04:17
n°1947681
Laoo
Posté le 06-12-2009 à 14:24:22  profilanswer
 


Salut, Le Dab, pardon pour "le Papé", j'ai pas voulu t'offenser.
 

Citation :

...Mais un minimum de sens du respect devrait t'amener à m'appeler seniorpapou (le tout en minuscule), je t'en remercie.


 
Impossible!
 
Que je te respecte, cela va sans dire, mais je ne sais pourquoi, ce genre de mot m'écorche un tantinet la glotte, ou la plume, voire le clavier, en l'occurrence. J'ai beaucoup de mal avec les diminutifs, je n'y arrive pas, c'est plus fort que moi! Figure-toi que même avec mon frère on s'appelle par notre nom de famille, ou alors "frelot", mais jamais "Machounet" ou "Trucounet". Never!
 
D'autant que senior et papou à la fois sonne un rien redondant! Bis repetita non placent, disait le poète.
 
so, j'ai bien l'honneur, Monsieur vot' sérénité.
 


---------------
Olympus OM-D  EM-5 + 14-42
n°1947743
seniorpapo​u
Posté le 06-12-2009 à 21:43:44  profilanswer
 

Bonsoir,
pour revenir au post de gia17:
il manque juste une sécurité pour éviter que le nom de la feuille dépasse 31 carac.  et une sécurité pour éviter les caractères interdits.
 
Je me souviens avoir eu des PB avec les apostrophes ou les espaces , qui sont autorisés. Si je retrouve, je communique. Par ailleurs j'avais récupérer une séquence de classement des feuilles individuelles par ordre alphabétique. Pareil: si je retrouve...
 
Cordialement

n°1947826
Laoo
Posté le 07-12-2009 à 10:41:53  profilanswer
 

seniorpapou a écrit :

Bonsoir,
pour revenir au post de gia17:
il manque juste une sécurité pour éviter que le nom de la feuille dépasse 31 carac.  et une sécurité pour éviter les caractères interdits.
 


Euuh, tu as certainement raison, du moins dans l'absolu, mais, sans vouloir aucunement te contredire, il s'agit de noms de famille, alors, plus de 31 caractères, dont certains interdits, c'est quand même rare, par chez nous, non?     :whistle:  
 
 

Citation :


 Par ailleurs j'avais récupérer une séquence de classement des feuilles individuelles par ordre alphabétique. Pareil: si je retrouve...


 
Ca, ça doit être très intéressant, et notamment ici, pour trier ses feuilles de conducteurs...   Même s'il me semble qu'une feuille entière pour UN gus, c'est ptet beaucoup, mais bon...
 
Cordialement  


---------------
Olympus OM-D  EM-5 + 14-42

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [MACRO EXCEL] créer une macro insérer des feuilles

 

Sujets relatifs
inserer un lien dans une imageInsérer une image dans un bouton ! Pb de taille
[wxWidgets] La macro WXDLL_ENTRY_FUNCTION[VBA Excel] Changer la couleur suite a une formule
Une sorte de ".bat" sous windowsExiste-t-il une alternative au flash pour créer des mini-jeux ?
macro creation autormatique combobox VB[SAS] Problème SYMGET dans macro
Comment créer un pipe IN & OUT en executant un binaire ?[VBA] A la rescousse d'un noob en galère sur une macro
Plus de sujets relatifs à : [MACRO EXCEL] créer une macro insérer des feuilles


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR