Copier une feuille donnée d'une même personne dans son onglet

thespeedy20

XLDnaute Occasionnel
Bonjour le forum,

J'ai une carte de vacance, elle nominative, je parviens à la copier dans un onglet....et j'aimerais pouvoir y mettre toutes les feuilles de congés du même individu à suite une de l'autre

Une petite aide ...merci

OLi
 

Pièces jointes

  • Carte.xlsm
    83.3 KB · Affichages: 6

san san

XLDnaute Nouveau
hello,


je ne suis pas une pro, mais j'ai essayé de transcrire ce que tu voulais (ca m'entraine en meme temps :p)

c'est surement perfectible mais ca a l'air de fonctionner parcontre quand tu dis vouloir tes fiches à la suite , c'est bien dans le meme onglet?? car moi je l'ai compris ainsi.

VB:
Sub Copyrenameworksheet()

    Dim ws As Worksheet
    Set wh = Worksheets(ActiveSheet.Name)
      
      nom = Sheets("CARTE VIERGE").Range("C2").Value
      Sheets("CARTE VIERGE").Range("A1:M30").SpecialCells(xlVisible).Copy
      
For i = 2 To Worksheets.Count
      
    Worksheets(i).Activate
    
    If ActiveSheet.Name = nom Then
    
    Worksheets(nom).Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial
    Exit Sub
    
 
    End If
          
Next
    
    Sheets("CARTE VIERGE").Copy After:=Worksheets(Sheets.Count)
    
    If wh.Range("C2").Value <> "" Then
    ActiveSheet.Name = wh.Range("C2").Value
    End If
    
    wh.Activate
    
End Sub
 

san san

XLDnaute Nouveau
re,

je viens de trouver une piste pour le message d'erreur, en faite c'est un problème de CASSE sur le prénom, entre Olivier et olivier, pour la rechercher c'est différent, parcontre lors de la création de l'onglet, excel considère que c'est le meme nom
 

san san

XLDnaute Nouveau
je te joins ton fichier : pour éviter des erreurs de saisie avec les majuscules des prénoms, je t'ai mis un onglet où tu peux mettre les prénoms des employés et ainsi en C2 tu as une liste déroulante pour choisir.

Normalement, l'ajout d'une nouvelle fiche se fait bien en dessous de la précédente.

voilà :)
 

Pièces jointes

  • Carte.xlsm
    84.7 KB · Affichages: 8

san san

XLDnaute Nouveau
re,

bon je sèche un peu là, un expert peut il passer par là ?? siouplé

tu peux ajouter une ligne pour le format mais ca ne reprend pas la hauteur des lignes

VB:
For i = 2 To Worksheets.Count
     
    Worksheets(i).Activate
   
    If ActiveSheet.Name = nom Then

    Worksheets(nom).Range("A" & Rows.Count).End(xlUp).Offset(2).PasteSpecial Paste:=xlPasteFormats
    Worksheets(nom).Range("A" & Rows.Count).End(xlUp).Offset(2).PasteSpecial
    Exit Sub
   

    End If
         
Next
 

san san

XLDnaute Nouveau
hello James,

c'est pas pour moi mais pour Speedy ;)

la macro que j'ai faite copie bien mais en fait il voudrait que le "collé" de sa carte vierge soit identique aussi au niveau de la mise en forme + hauteur de lignes.

hesite pas a corriger le code car j'imagine que ca ne doit pas être hyper "propre" comme je débute :p
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof