Deplacement avec condition V2003

Le
Manu
Bonjour,

Je souhaiterais que sur toutes les feuil qui se nomment sheet , Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois
sur sa cellule de droite il n'y a rien, alors qu'il me deplace ce contenu
dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E
F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Tatanka
Le #21155801
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors qu'il
me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu



Manu
Le #21158611
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement
sur les feuil qui commence par le nom sheet (exemple: sheet1; sheet2;....)
mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais
aussi que les cellules ne se copient pas, mais ce deplacent de facon ensuite
à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1,
6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu" uv$
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la
fois sur sa cellule de droite il n'y a rien, alors qu'il me deplace ce
contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu







Tatanka
Le #21159981
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR 4 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement sur les feuil qui commence par le nom sheet (exemple:
sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais aussi que les cellules ne se
copient pas, mais ce deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors qu'il
me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu











Manu
Le #21160581
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la 1ere
est toujours complete. et ca sur toutes les feuil qui commencent par sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1
ppp
4 8A 3
zzz

En tous cas, merci de ton aide

Manu

"Tatanka" %
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche
uniquement sur les feuil qui commence par le nom sheet (exemple: sheet1;
sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et
je souhaiterais aussi que les cellules ne se copient pas, mais ce
deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un
deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j -
1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu" uv$
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la
fois sur sa cellule de droite il n'y a rien, alors qu'il me deplace ce
contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu















Tatanka
Le #21160941
J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la 1ere est toujours complete. et ca sur toutes les feuil qui
commencent par sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka"
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement sur les feuil qui commence par le nom sheet (exemple:
sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais aussi que les cellules ne se
copient pas, mais ce deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors
qu'il me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu



















Manu
Le #21161181
Voila, avec des explications dans le fichier joint.
http://www.cijoint.fr/cjlink.php?file=cj201002/cijNkjMZ2T.xls
Merci

Manu

"Tatanka"

J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la
1ere est toujours complete. et ca sur toutes les feuil qui commencent par
sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka" %
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E
F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche
uniquement sur les feuil qui commence par le nom sheet (exemple:
sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres
feuil, et je souhaiterais aussi que les cellules ne se copient pas,
mais ce deplacent de facon ensuite à supprimer toutes les lignes qui
ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka" news:
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j -
1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu" uv$
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à
la fois sur sa cellule de droite il n'y a rien, alors qu'il me
deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu























Manu
Le #21161671
En faite, ta derniere macro :
Sub Manu()
der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub

Fonctionne nickel, il faudrait maintenant si c'est possible de lui demander
de lancer cette macro sur toutes les feuil commencant par sheet

J'essaie des essais avec cela, mais ca ne marche pas

Sub total()

Dim sh As Worksheet
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Worksheets
If UCase(Left(sh.Name, 3)) = "She" Then

der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i

End If
Next
Application.DisplayAlerts = True
End Sub

Manu

"Manu" %23k$

Voila, avec des explications dans le fichier joint.
http://www.cijoint.fr/cjlink.php?file=cj201002/cijNkjMZ2T.xls
Merci

Manu

"Tatanka"

J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la
1ere est toujours complete. et ca sur toutes les feuil qui commencent
par sheet

A B C D E
F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka" news: %
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche
uniquement sur les feuil qui commence par le nom sheet (exemple:
sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres
feuil, et je souhaiterais aussi que les cellules ne se copient pas,
mais ce deplacent de facon ensuite à supprimer toutes les lignes qui
ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka" news:
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then
.Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu" uv$
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à
la fois sur sa cellule de droite il n'y a rien, alors qu'il me
deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu



























Tatanka
Le #21161661
Alors essaie donc celle-ci :

Sub Manu()
Dim F As Worksheet
For Each F In ActiveWorkbook.Worksheets
With F
If UCase(Left(.Name, 5)) = "SHEET" Then
der = .Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If .Cells(i, 1) <> "" And .Cells(i, 2) = "" Then
.Cells(i - 1, 6) = .Cells(i, 1)
.Cells(i, 1).EntireRow.Delete
End If
Next i
End If
End With
Next F
End Sub

Serge



"Manu"
En faite, ta derniere macro :
Sub Manu()
der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub

Fonctionne nickel, il faudrait maintenant si c'est possible de lui demander de lancer cette macro sur toutes les feuil commencant
par sheet

J'essaie des essais avec cela, mais ca ne marche pas

Sub total()

Dim sh As Worksheet
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Worksheets
If UCase(Left(sh.Name, 3)) = "She" Then

der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i

End If
Next
Application.DisplayAlerts = True
End Sub

Manu

"Manu"

Voila, avec des explications dans le fichier joint.
http://www.cijoint.fr/cjlink.php?file=cj201002/cijNkjMZ2T.xls
Merci

Manu

"Tatanka"

J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la 1ere est toujours complete. et ca sur toutes les feuil
qui commencent par sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka"
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement sur les feuil qui commence par le nom sheet
(exemple: sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais aussi que les
cellules ne se copient pas, mais ce deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors
qu'il me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu































Tatanka
Le #21161811
???
Dans ton classeur, j'ai du remplacer « prise » par « SORTIE »
pour obtenir le résultat que tu voulais !
Ai-je loupé quelque chose ?

Serge



"Manu"
En faite, ta derniere macro :
Sub Manu()
der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub

Fonctionne nickel, il faudrait maintenant si c'est possible de lui demander de lancer cette macro sur toutes les feuil commencant
par sheet

J'essaie des essais avec cela, mais ca ne marche pas

Sub total()

Dim sh As Worksheet
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Worksheets
If UCase(Left(sh.Name, 3)) = "She" Then

der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i

End If
Next
Application.DisplayAlerts = True
End Sub

Manu

"Manu"

Voila, avec des explications dans le fichier joint.
http://www.cijoint.fr/cjlink.php?file=cj201002/cijNkjMZ2T.xls
Merci

Manu

"Tatanka"

J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la 1ere est toujours complete. et ca sur toutes les feuil
qui commencent par sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka"
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement sur les feuil qui commence par le nom sheet
(exemple: sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais aussi que les
cellules ne se copient pas, mais ce deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors
qu'il me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu































Tatanka
Le #21161801
???
Dans ton classeur exemple, j'ai du remplacer « prise » par « SORTIE »
pour obtenir le résultat attendu !
Ai-je loupé quelque chose ?

Serge


"Manu"
En faite, ta derniere macro :
Sub Manu()
der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub

Fonctionne nickel, il faudrait maintenant si c'est possible de lui demander de lancer cette macro sur toutes les feuil commencant
par sheet

J'essaie des essais avec cela, mais ca ne marche pas

Sub total()

Dim sh As Worksheet
Application.DisplayAlerts = False
For Each sh In ActiveWorkbook.Worksheets
If UCase(Left(sh.Name, 3)) = "She" Then

der = Range("A65536").End(xlUp).Row
For i = der To 2 Step -1
If Cells(i, 1) <> "" And Cells(i, 2) = "" Then
Cells(i - 1, 6) = Cells(i, 1)
Cells(i, 1).EntireRow.Delete
End If
Next i

End If
Next
Application.DisplayAlerts = True
End Sub

Manu

"Manu"

Voila, avec des explications dans le fichier joint.
http://www.cijoint.fr/cjlink.php?file=cj201002/cijNkjMZ2T.xls
Merci

Manu

"Tatanka"

J'essaie de prévoir tous les cas de figures ;-)
Et dans ce cas-ci, que doit devenir le tableau A1:E7 ?
http://www.cijoint.fr/cjlink.php?file=cj201002/cijJDhkOOJ.xls

Serge



"Manu"
Voila ce que je souhaite voir, j'ai ajouté AA en B1 et BB en D1 car la 1ere est toujours complete. et ca sur toutes les feuil
qui commencent par sheet

A B C D E F
1 VBR AA 4 BB 49 toto
2 4 8 5
3 7 1 ppp
4 8A 3 zzz

En tous cas, merci de ton aide

Manu

"Tatanka"
Bonjour,

En supposant les valeurs suivantes sur Sheet4 :

A B C D E F
1 VBR AA 4 BB 49
2 TOTO 15 12
3 4 8 5
4 7 1
5 ppp
6 8A 3
7 zzz

Que désires-tu obtenir comme nouveau tableau ?

Serge



"Manu"
Bonjour et merci, ca fonctionne, mais je souhaite que ca marche uniquement sur les feuil qui commence par le nom sheet
(exemple: sheet1; sheet2;....) mais que la macro ne se lance pas sur les autres feuil, et je souhaiterais aussi que les
cellules ne se copient pas, mais ce deplacent de facon ensuite à supprimer toutes les lignes qui ont eu un deplacement
si je reprend mon exemple:
les lignes 2 et 4 devraient etre supprimer.

Merci
Manu

"Tatanka"
Salut Manu,

Je souhaiterais que sur toutes les feuil qui se nomment sheet... ,


???

Pas sûr d'avoir bien compris.
Essaie quand même ceci :

Sub Essai()
For i = 1 To ActiveWorkbook.Worksheets.Count
With Worksheets(i)
For j = 1 To .Range("A65536").End(xlUp).Row
If .Cells(j, 1) <> "" And .Cells(j, 2) = "" Then .Cells(j - 1, 6) = .Cells(j, 1)
Next j
End With
Next i
End Sub

Serge



"Manu"
Bonjour,



Qu'Excel
teste les colonnes A et dés qu'il voit queque chose de taper et qu'à la fois sur sa cellule de droite il n'y a rien, alors
qu'il me deplace ce contenu dans la ligne de dessus en colonne F
Pas sur d'avoir été clair, alors exemple :

A B C D E F

1 TOTO 254 111 VA 44
2 45
3 pppp 66 54
4 8A
5 ZZZZ Z7 44 PO

en B2 il n'y a rien, par consequent 45 doit arriver en F1
en B4 il n'y a rien, par consequent 8A doit arriver en F3

Ais je été clair, Merci

Manu































Publicité
Poster une réponse
Anonyme