macro pour inserer une ligne vide a chaque changement de nom...

Le
e.l.f
Bonjour

Voudriez vous bien m'aider a faire une macro SVP ? je ne suis absolument
pas developpeur et je seche un peu



j'ai un classeur excel avec une colonne nom, une colonne prenom, une
colonne . etc etc


je classe par nom j'ai donc

dupont marc
dupont jean
martin david
dubois jane
dubois valerie .


qui pourrait me faire ou m'expliquer comment faire une macro qui insere
une ligne vide apres chaque changement de ligne ?

et une macro qui fasse l'inverse c'est a dire qui supprime les ligne vide


Merci pour votre aide !!!

e.l.f



--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
...Patrick
Le #1837496
Sub ins()
lastr = Range("A65000").End(xlUp).Row
For i = lastr To 2 Step -1
Cells(i, 1).Select
Selection.EntireRow.Insert Shift:=xlDown
Next
End Sub

Sub DetruireLignesVides() ' Commencer par le bas
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
Application.ScreenUpdating = False
For r = DerniereLigne To 1 Step -1
If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r
ActiveSheet.UsedRange
End Sub


--
...Patrick
Quoi que vous fassiez, faites le bien .
Mail: http://cerbermail.com/?KPW0tTCjFw
Connectez vous sur ce forum par :
news://msnews.microsoft.com/microsoft.public.fr.excel


"e.l.f" news:
Bonjour

Voudriez vous bien m'aider a faire une macro SVP ? je ne suis absolument
pas developpeur et je seche un peu...



j'ai un classeur excel avec une colonne nom, une colonne prenom, une
colonne .... etc etc ...


je classe par nom j'ai donc

dupont marc
dupont jean
martin david
dubois jane
dubois valerie ....


qui pourrait me faire ou m'expliquer comment faire une macro qui insere
une ligne vide apres chaque changement de ligne ?

et une macro qui fasse l'inverse c'est a dire qui supprime les ligne vide


Merci pour votre aide !!!

e.l.f



--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !


e.l.f
Le #1837494
Sub ins()
lastr = Range("A65000").End(xlUp).Row
For i = lastr To 2 Step -1
Cells(i, 1).Select
Selection.EntireRow.Insert Shift:=xlDown
Next
End Sub


Merci patrick pour tes macro !
celle qui supprime les ligne fonctionne admirablement..

par contre celle qui insere les ligne ne fonctionne pas comme je
l'aurais souhaité (je suis désolé)

il faut que

dupont marc
dupont jean
martin david
dubois jane
dubois valerie

devienne:

dupont marc
dupont jean

martin david

dubois jane
dubois valerie ....

un saut de ligne apres que le dernier nom commun... (le classeur est trié)

J'espere que tu peux continuer a m'aider !

A+

--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !

...Patrick
Le #1837492
plus le temps, sorry mais qq t'aideras ici surement

ciao

"e.l.f" news:%
Sub ins()
lastr = Range("A65000").End(xlUp).Row
For i = lastr To 2 Step -1
Cells(i, 1).Select
Selection.EntireRow.Insert Shift:=xlDown
Next
End Sub


Merci patrick pour tes macro !
celle qui supprime les ligne fonctionne admirablement..

par contre celle qui insere les ligne ne fonctionne pas comme je
l'aurais souhaité (je suis désolé)

il faut que

dupont marc
dupont jean
martin david
dubois jane
dubois valerie

devienne:

dupont marc
dupont jean

martin david

dubois jane
dubois valerie ....

un saut de ligne apres que le dernier nom commun... (le classeur est trié)

J'espere que tu peux continuer a m'aider !

A+

--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !



e.l.f
Le #1837491

plus le temps, sorry mais qq t'aideras ici surement

ciao


c'est pas grave merci de ton aide !
--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !

JpPradier
Le #1823994
Bonjour e.l.f

J'ai modifié la macro de Patrick :

Sub ins()
lastr = Range("A65000").End(xlUp).Row
For i = lastr To 1 Step -1
nom1 = Left(Cells(i, 1).Value, InStr(Cells(i, 1).Value, " "))
nom2 = Left(Cells(i + 1, 1).Value, InStr(Cells(i + 1, 1).Value, " "))
If nom1 <> nom2 Then
Cells(i + 1, 1).Select
Selection.EntireRow.Insert Shift:=xlDown
End If
Next
End Sub

j-p
...Patrick
Le #1837479
Merci JP !!!


--
...Patrick (revenu)

Quoi que vous fassiez, faites le bien .
Mail: http://cerbermail.com/?KPW0tTCjFw
Connectez vous sur ce forum par :
news://msnews.microsoft.com/microsoft.public.fr.excel

"JpPradier" de news:
Bonjour e.l.f

J'ai modifié la macro de Patrick :

Sub ins()
lastr = Range("A65000").End(xlUp).Row
For i = lastr To 1 Step -1
nom1 = Left(Cells(i, 1).Value, InStr(Cells(i, 1).Value, " "))
nom2 = Left(Cells(i + 1, 1).Value, InStr(Cells(i + 1, 1).Value, " "))
If nom1 <> nom2 Then
Cells(i + 1, 1).Select
Selection.EntireRow.Insert Shift:=xlDown
End If
Next
End Sub

j-p



JpPradier
Le #1837473
Ben c'était avec plaisir ;-))

j-p
e.l.f
Le #1825458

Bonjour e.l.f

J'ai modifié la macro de Patrick :



je suis desolé mais elle ne fonctionne pas :-(
et j'avoue ne pas trop comprendre pourquoi ?!

(rien ne se passe quand je l'execute ...)

Merci de continuer a m'aider !!

--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !

JpPradier
Le #1834319
Bonjour e.l.f

tes données sont bien en colonne A ?

j-p
e.l.f
Le #1825822
Bonjour e.l.f

tes données sont bien en colonne A ?

j-p

dans le classeur que j'utilise pour tester ta macro j'ai:


les noms en colonne a, les prenoms en colonne b. la ligne 1 contient les
en-tetes. dans le classeur final, il y aura les nom seront dans d'autres
colonnes mais je modifierais l'instruction lastr =
Range("A65000").End(xlUp).Row en fonction.

Merci de ton aide !

--
R : Parce qu'on lit, en général, de gauche à droite et de haut en bas.
Q : Pourquoi dois-je répondre en dessous de la question ?

Fervent utilisateur de Thunderbird
A fond contre la quote de porc !

Publicité
Poster une réponse
Anonyme