Fusionner des lignes sous excels
Yan
-
ratikuss Messages postés 2296 Date d'inscription Statut Membre Dernière intervention -
ratikuss Messages postés 2296 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un tableau de 2000 lignes environs avec une dizaine de colonnes
il est du type :
/ Nom / Prénom / Date de naissance / informations divers ....
1/ X / Y / 01/01/1980 / aime le poulet
2/ X / Y / 01/01/1980 / vient dimanche
3/ A / B / 02/02/1982 / rien
4/C /D / / doit rappeler
4/C /D / 03/04/1980 /
...
j'aimerais obtenir automatiquement un tableau du type :
1/ X / Y / 01/01/1980 / aime le poulet - vient dimanche
2/ A / B / 02/02/1982 / rien
3/C /D / 03/04/1980 / doit rappeler
...
Je ne sais pas si c'est possible. Auriez vous une petite idée ?
j'ai un tableau de 2000 lignes environs avec une dizaine de colonnes
il est du type :
/ Nom / Prénom / Date de naissance / informations divers ....
1/ X / Y / 01/01/1980 / aime le poulet
2/ X / Y / 01/01/1980 / vient dimanche
3/ A / B / 02/02/1982 / rien
4/C /D / / doit rappeler
4/C /D / 03/04/1980 /
...
j'aimerais obtenir automatiquement un tableau du type :
1/ X / Y / 01/01/1980 / aime le poulet - vient dimanche
2/ A / B / 02/02/1982 / rien
3/C /D / 03/04/1980 / doit rappeler
...
Je ne sais pas si c'est possible. Auriez vous une petite idée ?
A voir également:
- Fusionner des lignes sous excels
- Comment fusionner des pdf sans logiciel - Guide
- Partager des photos en ligne - Guide
- Fusionner deux cellules excel - Guide
- Fusionner deux tableaux excel - Guide
- Pourquoi je ne peux pas fusionner des cellules dans excel - Forum Excel
5 réponses
Normalement c'est impossible sous excel, mais il faut que quelqu'un qui s'y connaitrait en VB confirme.
Je sais en revanche que sous acces c'est surement possible.
Je sais en revanche que sous acces c'est surement possible.
Bonjour,
Je ne sais pas si c'est possible. ...OUI.
Auriez vous une petite idée ? mais avec 2000 lignes et dix colonnes ça risque de prendre un certain temps, c'est le moins que l'ont puisse dire.
Il faut passer en revue (2000 x 10) cellules x (2000 x 10) soit 40 millions de possibilités !
A+
Je ne sais pas si c'est possible. ...OUI.
Auriez vous une petite idée ? mais avec 2000 lignes et dix colonnes ça risque de prendre un certain temps, c'est le moins que l'ont puisse dire.
Il faut passer en revue (2000 x 10) cellules x (2000 x 10) soit 40 millions de possibilités !
A+
Tu peux résoudre facilement ton problème de "redondance" de données avec un programme en VBA.
Si tu le souhaite, je veux bien t'aider à concevoir ce programme.
Le temps d'exécution du programme pourra être long (1 à 2 minutes) mais c'est toujours mieux que de le faire à la main ;-)
Si tu le souhaite, je veux bien t'aider à concevoir ce programme.
Le temps d'exécution du programme pourra être long (1 à 2 minutes) mais c'est toujours mieux que de le faire à la main ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai considéré que ton tableau commençait ligne 1 et que :
colonne A = numero index
colonne B = nom
colonne C = prenom
colonne D = date de naissance
colonne E = divers
Voilà =) ça à l'air de fonctionner de mon coté, par contre le mieux serait de rajouter un bout de code qui trouve automatiquement le nombre de ligne dans ton tableau.
colonne A = numero index
colonne B = nom
colonne C = prenom
colonne D = date de naissance
colonne E = divers
Sub anti_redondance()
nb_ligne = 2000
ReDim numero(nb_ligne)
ReDim nom(nb_ligne)
ReDim prenom(nb_ligne)
ReDim naissance(nb_ligne)
ReDim divers(nb_ligne)
ReDim ligne_a_supprimer(nb_ligne)
For i = 1 To nb_ligne
numero(i) = Range("A" & i)
nom(i) = Range("B" & i)
prenom(i) = Range("C" & i)
naissance(i) = Range("D" & i)
divers(i) = Range("E" & i)
ligne_a_supprimer(i) = 0
Next i
For x = 1 To nb_ligne
For y = 1 To nb_ligne
If Range("B" & x) = nom(y) And Range("C" & x) = prenom(y) And Range("A" & x) <> numero(y) Then
If naissance(y) <> "" Then
temp_naissance = naissance(y)
End If
temp_divers = divers(y)
ligne_a_supprimer(y) = 1
For n = 1 To nb_ligne
If Range("B" & n) = nom(y) And Range("C" & n) = prenom(y) And Range("E" & n) <> divers(y) Then
If naissance(y) <> "" Then
Range("D" & n) = naissance(y)
End If
Range("E" & n) = divers(y) & " " & divers(n)
End If
Next n
End If
Next y
Next x
For i = 1 To nb_ligne
If ligne_a_supprimer(i) = 1 Then
Rows(i + 1).Select
Selection.Delete Shift:=xlUp
End If
Next i
End Sub
Voilà =) ça à l'air de fonctionner de mon coté, par contre le mieux serait de rajouter un bout de code qui trouve automatiquement le nombre de ligne dans ton tableau.