Maj ordre alphabétique plusieurs onglets

Résolu
scaph8 Messages postés 4 Statut Membre -  
scaph8 Messages postés 4 Statut Membre -
Bonsoir à tous
J'utilise un tableur excel pour la compta d'un club de sport que j'ai mis au point.
Ce tableur comprend plusieurs onglets avec a chaque fois la liste des adhérant s en premier (classé
par ordre alphabétique).
Or lorsque je souhaite rajouter une nouvelle personne, je suis obligé de créer un nouvelle ligne dans chaque onglet afin de l'insérer a la bonne place.
Ma question est la suivante : existe il un moyen d'insérer en une seule fois et a la bonne place une ligne dans tout les onglets souhaités (en copiant les formules de la ligne)
J'espère avoir été assez claire dans ma demande
Merci pour vos réponses
Cdt

6 réponses

  1. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    En supposant la liste dans le premier onglet en A2, A3, A4 etc

    Il suffit dans chaque autre onglet dans la cellule A2
    = Nomdupremieronglet!A2
    et d'étirer la formule plus que nécessaire

    Toute modification dans le 1er onglet sera répercutée sur les autres

    si les 0 qui vont apparaitre dans les lignes pour lesquelles il n'y a rien sur le 1er tableau t'indisposent , 2 solutions :
    -soit par une mise en forme conditionnelle sur celle colonne tu masques les 0 en mettant écriture blanche si la vaelur de la cellule=0
    -soit tu modifies ainsi la formule à mettre en A2
    =SI(Nomdupremieronglet!A2="";"";Nomdupremieronglet!A2)

    Cdlmnt

    "L'imagination est plus importante que le savoir." A. Einstein
    0
  2. scaph8 Messages postés 4 Statut Membre
     
    bonjour,
    merci pour ce retour.
    toutefois mon problème est un peu plus complexe!
    je me suis peut être mal exprimé dans ma première demande !
    ci-joint lien wetransfert permettant de le télécharger :

    http://we.tl/6bjTv0A0IF

    j'ai des formules qui recherchent des valeurs en fonction des noms,
    l'idée serait de pouvoir insérer des lignes (en copiant également les formules)
    merci pour votre aide
    cdt
    0
  3. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Pas simple il va falloir procéder par macro mais il faut plus de précisions :

    Dans inscription le début de la liste est classé par ordre alphabétique mais pas la fin de la liste
    Comment fait tu lorsque tu inscris un nouveau ?
    Tu insères une nouvelle ligne au bon endroit et tu rentres le nom
    ou tu inscris le nom à la fin et tu fais un tri alphabétique ?

    Dans l'attente

    Cdlmnt
    0
  4. scaph8 Messages postés 4 Statut Membre
     
    et oui je suis bien conscient que ma demande n'est pas simple !!
    c'est pour cela que je fais appel à vous !
    oui lorsqu'il y a un nouveau je le rajoute dans l'ordre alphabétique (insérer avec copie des formules) dans les onglets inscription / calendrier / régul sorties
    mon idée serait de ne le faire que sur un onglet et que les 2 autres se mettent à jour automatiquement (avec copie des formules).
    merci pour l'aide
    cdt
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Re,

    1° supprimer une des 7 premières lignes dans CALENDRIER de manière à ce que toutes les listes des nomes commencent en ligne 12 dans INSCRIPTION, CALENDRIER et REGUL
    2° Corriger le nom de la feuille INSCRIPTION (appelée INSCRITPION !)
    3* Ouvrir l'éditeur VBA (ALT +F11)
    selectionner la feuille INSCRIPTION dans l'arborescence
    et coller la macro ci dessous dans la page vierge à droite :

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Rows(1).Cells.Count = Columns.Count Then
    x = Target.Row
    nom = InputBox("Entrer les nouveaux nom et prénom")
    If nom = "" Then Exit Sub
    ActiveSheet.Range("C" & x) = nom
    Sheets("INSCRIPTION").Range("B" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("INSCRIPTION").Range("B" & x - 1 & ":B" & x + 1), Type:=xlFillDefault

    Sheets("CALENDRIER").Select
    Sheets("CALENDRIER").Rows(x & ":" & x).Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Sheets("CALENDRIER").Range("B" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("CALENDRIER").Range("B" & x - 1 & ":B" & x + 1), Type:=xlFillDefault
    Sheets("CALENDRIER").Range("D" & x - 1 & ":F" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("CALENDRIER").Range("D" & x - 1 & ":F" & x), Type:=xlFillDefault
    Sheets("CALENDRIER").Range("C" & x) = nom

    Sheets("REGUL SORTIE").Select
    Sheets("REGUL SORTIE").Rows(x & ":" & x).Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Sheets("REGUL SORTIE").Range("B" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("REGUL SORTIE").Range("B" & x - 1 & ":B" & x + 1), Type:=xlFillDefault
    Sheets("REGUL SORTIE").Range("D" & x - 1 & ":F" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("REGUL SORTIE").Range("D" & x - 1 & ":F" & x), Type:=xlFillDefault
    Sheets("REGUL SORTIE").Range("H" & x - 1 & ":L" & x - 1).Select
    Selection.AutoFill Destination:=Sheets("REGUL SORTIE").Range("H" & x - 1 & ":L" & x), Type:=xlFillDefault
    Sheets("REGUL SORTIE").Range("C" & x) = nom
    End If
    Sheets("INSCRIPTION").Select
    End Sub

    Lors d'une insertion de ligne une fenêtre s'ouvre pour demander les nom et prénom et la macro fait le reste (insertion, copie des formules, inscription du nom)
    (Ne rien rentrer comme nom ou Annuler stoppe la macro et les insertions ne sont faites dans les autres feuilles, ainsi si on s'est trompé de ligne d'insertion on peut la supprimer et recommencer)

    ATTENTION avant de lancer la macro vérifier que les listes sont identiques dans les 3 feuilles ce qui n'est actuellement pas le cas, par ex le nom ANGHELOU existe dans CALENDRIER et REGUL mais pas dans INSCRIPTION !

    Cdlmnt
    0
  7. scaph8 Messages postés 4 Statut Membre
     
    Bonjour
    et un grand merci pour cette macro elle est parfaite et correspond exactement à ma demande !!
    bonne journée
    cdt
    0