Suppression de ligne en automatique

Le
stealz
Bonjour,
j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
Je m'explique :
la première colonne contient toujours un numéro
certaines autres colonnes (jusqu'à AN) peuvent être remplises selon les lignes.
Si, pour une ligne donnée, aucune case des colonnes de B à AN n'est remplie alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution d'une macro.
Je pense que pour cela, il doit passer en revue toutes les lignes une par et regarder cases par cases pour chaques colonnes mais je suis devant une feuille blanche. Je suis nul en programmation alors j'espère avoir donnée les bonnes infos et que quequ'un pourra m'aider.
D'avance merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #19792591
Bonjour,

dim i as long
for i=[a65536].end(xlup).row to 2 step -1
if Range("AO"&i).end(xltoleft).column=1 then Rows(i).entirerow.delete
next i

'lSteph


On 20 juil, 14:58, stealz
Bonjour,
j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
Je m'explique :
la première colonne contient toujours un numéro
certaines autres colonnes (jusqu'à AN) peuvent être remplises selon l es
lignes.
Si, pour une ligne donnée, aucune case des colonnes de B à AN n'est r emplie
alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution d'une ma cro.
Je pense que pour cela, il doit passer en revue toutes les lignes une par et
regarder cases par cases pour chaques colonnes mais je suis devant une fe uille
blanche. Je suis nul en programmation alors j'espère avoir donnée les bonnes
infos et que quequ'un pourra m'aider.
D'avance merci


stealz
Le #19793361
LSteph a écrit le 20/07/2009 à 15h10 :
Bonjour,

dim i as long
for i=[a65536].end(xlup).row to 2 step -1
if Range("AO"&i).end(xltoleft).column=1 then
Rows(i).entirerow.delete
next i

'lSteph


On 20 juil, 14:58, stealz wrote:
Bonjour,
j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
Je m'explique :
la première colonne contient toujours un numéro
certaines autres colonnes (jusqu'à AN) peuvent être remplises
selon l es
lignes.
Si, pour une ligne donnée, aucune case des colonnes de B à AN
n'est r emplie
alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution d'une ma
cro.
Je pense que pour cela, il doit passer en revue toutes les lignes une par et
regarder cases par cases pour chaques colonnes mais je suis devant une fe
uille
blanche. Je suis nul en programmation alors j'espère avoir
donnée les bonnes
infos et que quequ'un pourra m'aider.
D'avance merci





Ca a l'air de marcher, au début j'ai cru que ca plantait mais nan !!

C'est énorme !!

Je dois quand même en faire un pour vérifier nan ??

En tout cas merci beaucoup !!!
stealz
Le #19793741
LSteph a écrit le 20/07/2009 à 15h10 :
Bonjour,

dim i as long
for i=[a65536].end(xlup).row to 2 step -1
if Range("AO"&i).end(xltoleft).column=1 then
Rows(i).entirerow.delete
next i

'lSteph


On 20 juil, 14:58, stealz wrote:
Bonjour,
j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
Je m'explique :
la première colonne contient toujours un numéro
certaines autres colonnes (jusqu'à AN) peuvent être remplises
selon l es
lignes.
Si, pour une ligne donnée, aucune case des colonnes de B à AN
n'est r emplie
alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution d'une ma
cro.
Je pense que pour cela, il doit passer en revue toutes les lignes une par et
regarder cases par cases pour chaques colonnes mais je suis devant une fe
uille
blanche. Je suis nul en programmation alors j'espère avoir
donnée les bonnes
infos et que quequ'un pourra m'aider.
D'avance merci





J'ai un petit problème :

il y a une différence de 4 lignes, je ne peux pas vraiment me permettre ça.
Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas uniquement une case mais un ensemble de cases qui est la structure classique).

Je ne comprends vraiment pas pourquoi !!

Est-ce que vous savez pourquoi ??

Merci
LSteph
Le #19794151
..
ne voyant ni ces 4 lignes ni la différence qu'elles présenteraient par
rapport à des lignes....

N'y aurait il pas quelque malencontreuse fusion de cellules..?


Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient à
ce traitement.
http://cjoint.com

--
lSteph

On 20 juil, 18:01, stealz
LSteph a écrit le 20/07/2009 à 15h10 :



> Bonjour,

> dim i as long
> for i=[a65536].end(xlup).row to 2 step -1
> if Range("AO"&i).end(xltoleft).column=1 then
> Rows(i).entirerow.delete
> next i

> 'lSteph

> On 20 juil, 14:58, stealz  wrote:
>> Bonjour,
>> j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
>> Je m'explique :
>> la première colonne contient toujours un numéro
>> certaines autres colonnes (jusqu'à AN) peuvent être remplises
>> selon l es
>> lignes.
>> Si, pour une ligne donnée, aucune case des colonnes de B à AN
>> n'est r emplie
>> alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution d'une ma
>> cro.
>> Je pense que pour cela, il doit passer en revue toutes les lignes une par
et
>> regarder cases par cases pour chaques colonnes mais je suis devant une fe
>> uille
>> blanche. Je suis nul en programmation alors j'espère avoir
>> donnée les  bonnes
>> infos et que quequ'un pourra m'aider.
>> D'avance merci

J'ai un petit problème :

il y a une différence de 4 lignes, je ne peux pas vraiment me permettre ça.
Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas
uniquement une case mais un ensemble de cases qui est la structure classi que).

Je ne comprends vraiment pas pourquoi !!

Est-ce que vous savez pourquoi ??

Merci- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


stealz
Le #19801391
LSteph a écrit le 20/07/2009 à 18h38 :
..
ne voyant ni ces 4 lignes ni la différence qu'elles
présenteraient par
rapport à des lignes....

N'y aurait il pas quelque malencontreuse fusion de cellules..?


Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient à
ce traitement.
http://cjoint.com

--
lSteph

On 20 juil, 18:01, stealz wrote:
LSteph a écrit le 20/07/2009 à 15h10 :



> Bonjour,

> dim i as long
> for i=[a65536].end(xlup).row to 2 step -1
> if Range("AO"&i).end(xltoleft).column=1 then
> Rows(i).entirerow.delete
> next i

> 'lSteph

> On 20 juil, 14:58, stealz  wrote:
>> Bonjour,
>> j'ai un tableau d'environ 10 000 lignes qui est rempli partiellement.
>> Je m'explique :
>> la première colonne contient toujours un numéro
>> certaines autres colonnes (jusqu'à AN) peuvent être
remplises
>> selon l es
>> lignes.
>> Si, pour une ligne donnée, aucune case des colonnes de B
à AN
>> n'est r emplie
>> alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution
d'une ma
>> cro.
>> Je pense que pour cela, il doit passer en revue toutes les lignes une
par
et
>> regarder cases par cases pour chaques colonnes mais je suis devant
une fe
>> uille
>> blanche. Je suis nul en programmation alors j'espère avoir
>> donnée les  bonnes
>> infos et que quequ'un pourra m'aider.
>> D'avance merci

J'ai un petit problème :

il y a une différence de 4 lignes, je ne peux pas vraiment me permettre
ça.
Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas
uniquement une case mais un ensemble de cases qui est la structure classi
que).

Je ne comprends vraiment pas pourquoi !!

Est-ce que vous savez pourquoi ??

Merci- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -





Alors j'ai essayer beaucoup beaucoup de choses. Je ne comprend pas vraiment pourquoi mais si on supprime une donnée de ces lignes ou que l'on ajoute ca marche.
Je te donne un exemple du problème, c'est toujours les 2 lignes avec la première colonne en jaune qui bug.
Je ne peux pas te laisser les données d'origine mais tu verras que même lorsque je change ce qu'il y avait marqué c'est toujours c'est 2 lignes qui bug.
Pour info, il est impossible de controler le nombre de cases par lignes qui seront remplies et les cases vides (sauf pour la colonne C) doivent être avec des points.
Je te met un exemple d'un fichier tout con qui bug avec ta macro, si tu peux m'aider ca serait super sympa parce que là je crois que je vais craquer, c'est incompréhensible.

http://cjoint.com/?hvsfpU7Kgz
LSteph
Le #19805211
Bonjour,

..ok je regarde!

--
lSteph

On 21 juil, 18:13, stealz
LSteph a écrit le 20/07/2009 à 18h38 :



> ..
> ne voyant ni ces 4 lignes ni la différence qu'elles
> présenteraient par
> rapport à des lignes....

> N'y aurait il pas quelque malencontreuse  fusion de cellules..?

> Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient à
> ce traitement.
>http://cjoint.com

> --
> lSteph

> On 20 juil, 18:01, stealz  wrote:
>> LSteph a écrit le 20/07/2009 à 15h10 :

>> > Bonjour,

>> > dim i as long
>> > for i=[a65536].end(xlup).row to 2 step -1
>> > if Range("AO"&i).end(xltoleft).column=1 then
>> > Rows(i).entirerow.delete
>> > next i

>> > 'lSteph

>> > On 20 juil, 14:58, stealz  wrote:
>> >> Bonjour,
>> >> j'ai un tableau d'environ 10 000 lignes qui est rempli partiellemen t.
>> >> Je m'explique :
>> >> la première colonne contient toujours un numéro
>> >> certaines autres colonnes (jusqu'à AN) peuvent être
>> remplises
>> >> selon l es
>> >> lignes.
>> >> Si, pour une ligne donnée, aucune case des colonnes de B
>> à AN
>> >> n'est r emplie
>> >> alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution
>> d'une  ma
>> >> cro.
>> >> Je pense que pour cela, il doit passer en revue toutes les lignes u ne
>>  par
>> et
>> >> regarder cases par cases pour chaques colonnes mais je suis devant
>> une  fe
>> >> uille
>> >> blanche. Je suis nul en programmation alors j'espère avoir
>> >> donnée les  bonnes
>> >> infos et que quequ'un pourra m'aider.
>> >> D'avance merci

>> J'ai un petit problème :

>> il y a une différence de 4 lignes, je ne peux pas vraiment me permet tre
>>  ça.
>> Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas
>> uniquement une case mais un ensemble de cases qui est la structure cla ssi
>> que).

>> Je ne comprends vraiment pas pourquoi !!

>> Est-ce que vous savez pourquoi ??

>> Merci- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Alors j'ai essayer beaucoup beaucoup de choses. Je ne comprend pas vraime nt
pourquoi mais si on supprime une donnée de ces lignes ou que l'on ajout e ca
marche.
Je te donne un exemple du problème, c'est toujours les 2 lignes avec la
première colonne en jaune qui bug.
Je ne peux pas te laisser les données d'origine mais tu verras que mê me lorsque
je change ce qu'il y avait marqué c'est toujours c'est 2 lignes qui bug .
Pour info, il est impossible de controler le nombre de cases par lignes q ui
seront remplies et les cases vides (sauf pour la colonne C) doivent êtr e avec
des points.
Je te met un exemple d'un fichier tout con qui bug avec ta macro, si tu p eux
m'aider ca serait super sympa parce que là je crois que je vais craquer , c'est
incompréhensible.

http://cjoint.com/?hvsfpU7Kgz- Masquer le texte des messages précéden ts -

- Afficher le texte des messages précédents -


LSteph
Le #19805281
Re, Bonjour,

C'est tout simple j'ai fait partir de AO dans la mesure où ton tableau
selon ce que tu évoquais partait de AN
S'il y a qqchose en AO il faut s'assurer que AP est bien vide... bref
partir de la colonne vide qui détermine ainsi (pour excel) la fin de
ton tableau.

Autre écueil il y a des cellules vides et d'autres contenant un point,
celles qui contiennent un point
ne sont donc pas vides.

Ce qui explique la disparition de celles marquées en jaunes et pas
les autres.
En effet la macro parcoure la ligne depuis une cellule vide vers la
gauche, dés qu'elle rencontre une cellule pleine
cela détermine l'arrêt sur une colonne dans le xltoleft et si son
numéro est égal à 1 la ligne est supprimée sinon elle est conserv ée.
Si la cellule de départ est remplie xltoleft cherchera cette fois une
cellule vide
Dans le cas ou AO est remplie, ce qui est en contradiction avec
l'énnoncé qui stipulait AN, si toute la ligne est remplie le xltoleft
ne trouvera que des cellules remplies aussi donc s'arrêtera sur la
première vide , ainsi s'il n'y en a pas, la ligne sera supprimée.

Cordialement.

--
lSteph


On 21 juil, 18:13, stealz
LSteph a écrit le 20/07/2009 à 18h38 :



> ..
> ne voyant ni ces 4 lignes ni la différence qu'elles
> présenteraient par
> rapport à des lignes....

> N'y aurait il pas quelque malencontreuse  fusion de cellules..?

> Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient à
> ce traitement.
>http://cjoint.com

> --
> lSteph

> On 20 juil, 18:01, stealz  wrote:
>> LSteph a écrit le 20/07/2009 à 15h10 :

>> > Bonjour,

>> > dim i as long
>> > for i=[a65536].end(xlup).row to 2 step -1
>> > if Range("AO"&i).end(xltoleft).column=1 then
>> > Rows(i).entirerow.delete
>> > next i

>> > 'lSteph

>> > On 20 juil, 14:58, stealz  wrote:
>> >> Bonjour,
>> >> j'ai un tableau d'environ 10 000 lignes qui est rempli partiellemen t.
>> >> Je m'explique :
>> >> la première colonne contient toujours un numéro
>> >> certaines autres colonnes (jusqu'à AN) peuvent être
>> remplises
>> >> selon l es
>> >> lignes.
>> >> Si, pour une ligne donnée, aucune case des colonnes de B
>> à AN
>> >> n'est r emplie
>> >> alors j'aimerai qu'Excel supprime ma ligne lors de l'excéution
>> d'une  ma
>> >> cro.
>> >> Je pense que pour cela, il doit passer en revue toutes les lignes u ne
>>  par
>> et
>> >> regarder cases par cases pour chaques colonnes mais je suis devant
>> une  fe
>> >> uille
>> >> blanche. Je suis nul en programmation alors j'espère avoir
>> >> donnée les  bonnes
>> >> infos et que quequ'un pourra m'aider.
>> >> D'avance merci

>> J'ai un petit problème :

>> il y a une différence de 4 lignes, je ne peux pas vraiment me permet tre
>>  ça.
>> Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas
>> uniquement une case mais un ensemble de cases qui est la structure cla ssi
>> que).

>> Je ne comprends vraiment pas pourquoi !!

>> Est-ce que vous savez pourquoi ??

>> Merci- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Alors j'ai essayer beaucoup beaucoup de choses. Je ne comprend pas vraime nt
pourquoi mais si on supprime une donnée de ces lignes ou que l'on ajout e ca
marche.
Je te donne un exemple du problème, c'est toujours les 2 lignes avec la
première colonne en jaune qui bug.
Je ne peux pas te laisser les données d'origine mais tu verras que mê me lorsque
je change ce qu'il y avait marqué c'est toujours c'est 2 lignes qui bug .
Pour info, il est impossible de controler le nombre de cases par lignes q ui
seront remplies et les cases vides (sauf pour la colonne C) doivent êtr e avec
des points.
Je te met un exemple d'un fichier tout con qui bug avec ta macro, si tu p eux
m'aider ca serait super sympa parce que là je crois que je vais craquer , c'est
incompréhensible.

http://cjoint.com/?hvsfpU7Kgz- Masquer le texte des messages précéden ts -

- Afficher le texte des messages précédents -


stealz
Le #19806321
LSteph a écrit le 22/07/2009 à 10h44 :
Re, Bonjour,

C'est tout simple j'ai fait partir de AO dans la mesure où ton tableau
selon ce que tu évoquais partait de AN
S'il y a qqchose en AO il faut s'assurer que AP est bien vide... bref
partir de la colonne vide qui détermine ainsi (pour excel) la fin de
ton tableau.

Autre écueil il y a des cellules vides et d'autres contenant un point,
celles qui contiennent un point
ne sont donc pas vides.

Ce qui explique la disparition de celles marquées en jaunes et pas
les autres.
En effet la macro parcoure la ligne depuis une cellule vide vers la
gauche, dés qu'elle rencontre une cellule pleine
cela détermine l'arrêt sur une colonne dans le xltoleft et si son
numéro est égal à 1 la ligne est supprimée sinon
elle est conserv ée.
Si la cellule de départ est remplie xltoleft cherchera cette fois une
cellule vide
Dans le cas ou AO est remplie, ce qui est en contradiction avec
l'énnoncé qui stipulait AN, si toute la ligne est remplie le
xltoleft
ne trouvera que des cellules remplies aussi donc s'arrêtera sur la
première vide , ainsi s'il n'y en a pas, la ligne sera supprimée.

Cordialement.

--
lSteph


On 21 juil, 18:13, stealz wrote:
LSteph a écrit le 20/07/2009 à 18h38 :



> ..
> ne voyant ni ces 4 lignes ni la différence qu'elles
> présenteraient par
> rapport à des lignes....

> N'y aurait il pas quelque malencontreuse  fusion de cellules..?

> Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient
à
> ce traitement.
>http://cjoint.com

> --
> lSteph

> On 20 juil, 18:01, stealz  wrote:
>> LSteph a écrit le 20/07/2009 à 15h10 :

>> > Bonjour,

>> > dim i as long
>> > for i=[a65536].end(xlup).row to 2 step -1
>> > if Range("AO"&i).end(xltoleft).column=1 then
>> > Rows(i).entirerow.delete
>> > next i

>> > 'lSteph

>> > On 20 juil, 14:58, stealz  wrote:
>> >> Bonjour,
>> >> j'ai un tableau d'environ 10 000 lignes qui est rempli
partiellemen t.
>> >> Je m'explique :
>> >> la première colonne contient toujours un
numéro
>> >> certaines autres colonnes (jusqu'à AN) peuvent
être
>> remplises
>> >> selon l es
>> >> lignes.
>> >> Si, pour une ligne donnée, aucune case des colonnes
de B
>> à AN
>> >> n'est r emplie
>> >> alors j'aimerai qu'Excel supprime ma ligne lors de
l'excéution
>> d'une  ma
>> >> cro.
>> >> Je pense que pour cela, il doit passer en revue toutes les
lignes u ne
>>  par
>> et
>> >> regarder cases par cases pour chaques colonnes mais je suis
devant
>> une  fe
>> >> uille
>> >> blanche. Je suis nul en programmation alors j'espère
avoir
>> >> donnée les  bonnes
>> >> infos et que quequ'un pourra m'aider.
>> >> D'avance merci

>> J'ai un petit problème :

>> il y a une différence de 4 lignes, je ne peux pas vraiment me
permet tre
>>  ça.
>> Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (pas
>> uniquement une case mais un ensemble de cases qui est la structure
cla ssi
>> que).

>> Je ne comprends vraiment pas pourquoi !!

>> Est-ce que vous savez pourquoi ??

>> Merci- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Alors j'ai essayer beaucoup beaucoup de choses. Je ne comprend pas vraime nt
pourquoi mais si on supprime une donnée de ces lignes ou que l'on ajout
e ca
marche.
Je te donne un exemple du problème, c'est toujours les 2 lignes avec la
première colonne en jaune qui bug.
Je ne peux pas te laisser les données d'origine mais tu verras que
mê me lorsque
je change ce qu'il y avait marqué c'est toujours c'est 2 lignes qui bug
.
Pour info, il est impossible de controler le nombre de cases par lignes q ui
seront remplies et les cases vides (sauf pour la colonne C) doivent êtr
e avec
des points.
Je te met un exemple d'un fichier tout con qui bug avec ta macro, si tu p eux
m'aider ca serait super sympa parce que là je crois que je vais craquer
, c'est
incompréhensible.

http://cjoint.com/?hvsfpU7Kgz- Masquer le texte des messages
précéden ts -

- Afficher le texte des messages précédents -





Bonjour,

tout d'abord merci beaucoup pour l'explication de la macro, j'ai compris d'ou venait le problème. En faite la colonne AO c'était pas prévu, c'est pour des commentaires en plus entre nous : c'est pas dans le tableau en lui même.
J'ai donc fait partir la macro de AP après avoir supprimer toutes les données de la colonne comme ca :

Columns("AP:AP").Select
Selection.ClearContents

Je sais pas s'il y a mieux mais ca a l'air de marcher.

Sinon le problème venait aussi que sur 2 autres lignes j'avais une case vide : en C mais la colonne est cachée souvent et du coup j'ai pas l'impression que la macro la regardait. Car c'était effectivement les seules 4 lignes avec un commentaires en AO et entièrement rempli (hormis la colonne C) entre les 25000 lignes que j'ai...

Et par curiosité, juste pour vérifier si j'ai bien compris la macro va aussi supprimer une ligne qui est entièrement vide ?

Un grand merci à toi !!
LSteph
Le #19807541
...il ne devrait pas être question d'effacer des données, juste
supprimer les lignes vides
aussi s'il n'est rien sensé y avoir à droite de ton tableau tu
pourrais partir de la colonne iv

@+

--
lSteph

On 22 juil, 13:26, stealz
LSteph a écrit le 22/07/2009 à 10h44 :



> Re, Bonjour,

> C'est tout simple j'ai fait partir de AO dans la mesure où ton tablea u
> selon ce que tu évoquais partait de AN
> S'il y a qqchose en AO il faut s'assurer que AP est bien vide... bref
> partir de la colonne vide qui détermine ainsi (pour excel) la fin de
> ton tableau.

> Autre écueil il y a des cellules vides et d'autres contenant un point ,
> celles qui contiennent un point
> ne sont donc pas vides.

> Ce qui explique la disparition de  celles marquées en jaunes et pas
> les autres.
> En effet la macro parcoure la ligne depuis une cellule vide vers la
> gauche, dés qu'elle rencontre une cellule pleine
> cela détermine l'arrêt sur une colonne dans le xltoleft et si son
> numéro est égal à 1 la ligne est supprimée sinon
> elle est conserv ée.
> Si la cellule de départ est remplie xltoleft cherchera cette fois une
> cellule vide
> Dans le cas ou AO est remplie, ce qui est en contradiction avec
> l'énnoncé qui stipulait AN, si toute la ligne est remplie le
> xltoleft
> ne trouvera que des cellules remplies aussi donc s'arrêtera sur la
> première vide , ainsi s'il n'y en a pas, la ligne sera supprimée.

> Cordialement.

> --
> lSteph

> On 21 juil, 18:13, stealz  wrote:
>> LSteph a écrit le 20/07/2009 à 18h38 :

>> > ..
>> > ne voyant ni ces 4 lignes ni la différence qu'elles
>> > présenteraient par
>> > rapport à des lignes....

>> > N'y aurait il pas quelque malencontreuse  fusion de cellules..?

>> > Mets un exemple de classeur avec ces 4 lignes qui se soustrairaient
>> à
>> > ce traitement.
>> >http://cjoint.com

>> > --
>> > lSteph

>> > On 20 juil, 18:01, stealz  wrote:
>> >> LSteph a écrit le 20/07/2009 à 15h10 :

>> >> > Bonjour,

>> >> > dim i as long
>> >> > for i=[a65536].end(xlup).row to 2 step -1
>> >> > if Range("AO"&i).end(xltoleft).column=1 then
>> >> > Rows(i).entirerow.delete
>> >> > next i

>> >> > 'lSteph

>> >> > On 20 juil, 14:58, stealz  wrote:
>> >> >> Bonjour,
>> >> >> j'ai un tableau d'environ 10 000 lignes qui est rempli
>> partiellemen t.
>> >> >> Je m'explique :
>> >> >> la première colonne contient toujours un
>> numéro
>> >> >> certaines autres colonnes (jusqu'à AN) peuvent
>> être
>> >> remplises
>> >> >> selon l es
>> >> >> lignes.
>> >> >> Si, pour une ligne donnée, aucune case des colonnes
>> de B
>> >> à AN
>> >> >> n'est r emplie
>> >> >> alors j'aimerai qu'Excel supprime ma ligne lors de
>> l'excéution
>> >> d'une  ma
>> >> >> cro.
>> >> >> Je pense que pour cela, il doit passer en revue toutes les
>> lignes u ne
>> >>  par
>> >> et
>> >> >> regarder cases par cases pour chaques colonnes mais je suis
>> devant
>> >> une  fe
>> >> >> uille
>> >> >> blanche. Je suis nul en programmation alors j'espère
>> avoir
>> >> >> donnée les  bonnes
>> >> >> infos et que quequ'un pourra m'aider.
>> >> >> D'avance merci

>> >> J'ai un petit problème :

>> >> il y a une différence de 4 lignes, je ne peux pas vraiment me
>> permet tre
>> >>  ça.
>> >> Ce qui est bizarre c'est que ces 4 lignes sont beaucoup remplies (p as
>> >> uniquement une case mais un ensemble de cases qui est la structure
>> cla ssi
>> >> que).

>> >> Je ne comprends vraiment pas pourquoi !!

>> >> Est-ce que vous savez pourquoi ??

>> >> Merci- Masquer le texte des messages précédents -

>> >> - Afficher le texte des messages précédents -

>> Alors j'ai essayer beaucoup beaucoup de choses. Je ne comprend pas vra ime
nt
>> pourquoi mais si on supprime une donnée de ces lignes ou que l'on aj out
>> e ca
>> marche.
>> Je te donne un exemple du problème, c'est toujours les 2 lignes avec la
>> première colonne en jaune qui bug.
>> Je ne peux pas te laisser les données d'origine mais tu verras que
>> mê me lorsque
>> je change ce qu'il y avait marqué c'est toujours c'est 2 lignes qui bug
>> .
>> Pour info, il est impossible de controler le nombre de cases par ligne s q
ui
>> seront remplies et les cases vides (sauf pour la colonne C) doivent êtr
>> e avec
>> des points.
>> Je te met un exemple d'un fichier tout con qui bug avec ta macro, si t u p
eux
>> m'aider ca serait super sympa parce que là je crois que je vais craq uer
>> , c'est
>> incompréhensible.

>>http://cjoint.com/?hvsfpU7Kgz-Masquer le texte des messages
>> précéden ts -

>> - Afficher le texte des messages précédents -

Bonjour,

tout d'abord merci beaucoup pour l'explication de la macro, j'ai compris d'ou
venait le problème. En faite la colonne AO c'était pas prévu, c'est pour des
commentaires en plus entre nous : c'est pas dans le tableau en lui même .
J'ai donc fait partir la macro de AP après avoir supprimer toutes les d onnées
de la colonne comme ca :

Columns("AP:AP").Select
Selection.ClearContents

Je sais pas s'il y a mieux mais ca a l'air de marcher.

Sinon le problème venait aussi que sur 2 autres lignes j'avais une case vide :
en C mais la colonne est cachée souvent et du coup j'ai pas l'impressio n que la
macro la regardait. Car c'était effectivement les seules 4 lignes avec un
commentaires en AO et entièrement rempli (hormis la colonne C) entre le s 25000
lignes que j'ai...

Et par curiosité, juste pour vérifier si j'ai bien compris la macro v a aussi
supprimer une ligne qui est entièrement vide ?

Un grand merci à toi !!- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Publicité
Poster une réponse
Anonyme