Rechercher : dans
Par :

Fusion de lignes sur Excel

Dernière réponse le 11 jun 2008 à 10:41:39 yugnat10, le 19 mai 2008 à 16:05:51 
 Signaler ce message aux modérateurs

Bonjour, je n'ai pas trouvé de réponse à ma questions sur les sujets voisins déjà évoqués.
J'aimerais fusionner des lignes excel portant le même nom sans perdre le contenu des cellules.

Je pars de:


               2007               2006
Julien	  14	
Julien		                         12
Paul	     10	
Paul		                            8


Je voudrais arriver à

               2007               2006 
Julien	    14	                     12
Paul	     10	                       8


Si possible, j'aimerais éviter une macro.

Merci de vos lumières.
Configuration: Mac OS X
Firefox 2.0.0.14

Meilleures réponses pour « Fusion de lignes sur Excel » dans :
Figer une ligne dans un tableau Excel VoirPour figer la ligne 1 (par exemple) dans une feuille excel : Sélectionnez la ligne 2, Puis allez dans le menu "Fenêtres" et option "Figer les volets".
[Excel] Trier sur les lignes (horizontalement), non les colonnes VoirMicrosoft Excel est configuré par défaut pour réaliser un tri sur les colonnes (Données / Trier). Pour trier les données horizontalement, il suffit de sélectionner les données à trier, puis de cliquer sur le bouton Options et, dans le panneau...

1

lermite222, le 19 mai 2008 à 16:14:09

Sans macro, ne fusse que pour supprimé une ligne c'est pas possible
A+ L'expérience instruit plus sûrement que le conseil. (André G­ide)  

Répondre à lermite222

2

yugnat10, le 19 mai 2008 à 18:11:45

Si il n'ya vraiment pas d'autre solution, alors je me mettrai à la macro. Vous auriez une formule à me proposer éventuellement?
Merci.

Répondre à yugnat10

3

lermite222, le 19 mai 2008 à 18:30:34

Je vois ca, un peu de patience L'expérience instruit plus sûrement que le conseil. (André G­ide)  

Répondre à lermite222

4

yugnat10, le 19 mai 2008 à 19:00:59

En fait, je viens de trouver la solution en tatonant. Il suffit d'utiliser la fonction "consolider" d'excel. Pas besoin de macro.

Merci quand même d'avoir cherché!

Répondre à yugnat10

5

lermite222, le 19 mai 2008 à 19:01:17

Une macro qui te fais ca... A coller dans un module strandard.

Sub Concatene()
Dim i As Integer, Txt As String
Dim e As Integer, y As Integer
    Sheets("Feuil1").Select
    For i = Range("A1").SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
        Txt = LCase(Cells(i, 1).Value)
        If Txt <> "" Then
            'Compare si autre ligne méme texte
            For e = i - 1 To 1 Step -1
                If LCase(Cells(e, 1)) = Txt Then
                'il y a un Doublon
                    For y = 2 To Cells(i, 1).SpecialCells(xlCellTypeLastCell).Column
                        'concatène les 2 lignes
                        If Cells(i, y) <> "" And Cells(e, y) = "" Then
                            Cells(e, y) = Cells(i, y)
                        End If
                    Next y
                    'Supprimé la ligne
                    Rows(i).Delete
                End If
            Next e
        End If
    Next i
End Sub

A+ L'expérience instruit plus sûrement que le conseil. (André Gide)  

Répondre à lermite222

6

alweddle, le 11 jun 2008 à 09:17:46

Bonjour,

je me permet de relancer ce poste car j'ai une question concernant sensiblement le meme problème que celui exprimer par yugnat10 mais en plus complex.

Voila j'ai trois colones et 2567 lignes

Fournisseur Total HT Délai de règlement
F4942601 3 664,70 € 30J DATEFACT
F4942601 3 976,99 € 30J DATEFACT
F4942601 517,59 € 30J DATEFACT
F4942601 2 584,01 € 30J DATEFACT
F4942601 3 390,70 € 30J DATEFACT
F5937001 3 500,00 € 30J DATEFACT
F4942601 8 325,92 € 30J DATEFACT
F4942601 3 090,36 € 30J DATEFACT
F4942601 2 094,93 € 30J DATEFACT
F5937001 6 000,00 € 30J DATEFACT
F4942601 4 077,00 € 30J DATEFACT
F4942601 3 276,29 € 30J DATEFACT
F4942601 3 101,10 € 30J DATEFACT
F5937001 5 000,00 € 30J DATEFACT
F4942601 1 699,21 € 30J DATEFACT
F6000084 66,35 € 30J FM
F3360001 192,76 € 30J FM
F7718301 103,90 € 30J FM
F6011006 1 741,84 € 30J FM


je voudrai que excel me fasse la somme des lignes dont le fournisseur est le meme et qu'il me laisse le delai de réglement

Exemple de résulta F4942601 39 798,80 € 30J DATEFACT

Le but est de pouvoir obtenir dans un tableau croiser dynamique le nombre de frournisseur trier par leur délai de réglement et le montant HT attribuer a chacun

Les macros ne me font pas peur si vous avez une solution n'hésitez pas

J'espère avoir etait clair un grand merci d'avance a toute personne qui fera avancer mon problème a biento

Alweddle.

Alexandre.chretien60@laposte.net

Répondre à alweddle

7

 lermite222, le 11 jun 2008 à 10:41:39

Bonjour,
Tu aurais eu plus de chance d'avoir une réponse en créant ton propre topic,
Mais bon..,
Ton exposé n'est pas fort logique, dans toutes les facturesque tu montre il n'y à pas de date d'achat, donc pour avoir une somme à payer il faudrait au moins avoir une date de facture.
mais soit, si c'est ce qu tu veux

'Supposition (tu ne précise pas)
'Les données sont dans colonne A, B, C

Sub Total()
Dim i As Integer, Tot As Double, Delais As String
Dim RefFournisseur As String
    'Pour activer le calcul, 2 solutions
    '1°) la cellule sélectionnée est sur colonne A
    '2°) par input référence fournisseur
    Delais = ""
    Sheets("Feuil1").Select 'adapter au nom de ta feuille
    If ActiveCell.Column = 1 Then
        RefFournisseur = ActiveCell.Value
    Else
        RefFournisseur = InputBox("Entrez la référence fournisseur", "Total fournisseur")
        If RefFournisseur = "" Then Exit Sub
    End If
    For i = 1 To Range("A1").SpecialCells(xlCellTypeLastCell).Row
        If Cells(i, 1) = RefFournisseur Then
            If Delais = "" Then Delais = Cells(i, 3)
            Tot = Tot + Val(Cells(i, 2).Value)
        End If
    Next i
    MsgBox "Résultat pour le fournisseur: " & RefFournisseur & Chr(10) _
    & "Montant: " & Tot & Chr$(10) _
    & "Délais de payement: " & Delais
    
End Sub

A+ L'expérience instruit plus sûrement que le conseil. (André Gide)  

Répondre à lermite222