je suis sous excel 97 et je cherche un moyen pour automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8 colonnes, comment
1)copier cette ligne
2)insérer une nouvelle ligne en dessous
3)la coller dans ma nouvelle ligne insérée et supprimer la 8ème case de
cette nouvelle ligne
4)recommencer les trois premières actions tant que ma nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Ellimac
Bonjour,
Pas très optimisé mais fonctionne, si tu désires bien recopier une ligne si la colonne H est remplie et supprimer dans cette nouvelle ligne tout ce qui est à partir de cete colonne H :
Sub toto() If Range("h1") = "" Then Range("h1").End(xlDown).Select Else Range("h1").Select End If r = Range("h65000").End(xlUp).Row While ActiveCell.Row <> r ActiveCell.Offset(1, 0).EntireRow.Insert ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow.PasteSpecial Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0, 248)).Clear ActiveCell.Offset(1, 7).Select If ActiveCell.Row = r + 1 Then Exit Sub If ActiveCell = "" Then ActiveCell.End(xlDown).Select r = Range("h65000").End(xlUp).Row + 1 Wend End Sub
Camille
-----Message d'origine----- Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8 colonnes, comment
1)copier cette ligne 2)insérer une nouvelle ligne en dessous 3)la coller dans ma nouvelle ligne insérée et supprimer la 8ème case de
cette nouvelle ligne 4)recommencer les trois premières actions tant que ma nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
yves
.
Bonjour,
Pas très optimisé mais fonctionne, si tu désires bien
recopier une ligne si la colonne H est remplie et
supprimer dans cette nouvelle ligne tout ce qui est à
partir de cete colonne H :
Sub toto()
If Range("h1") = "" Then
Range("h1").End(xlDown).Select
Else
Range("h1").Select
End If
r = Range("h65000").End(xlUp).Row
While ActiveCell.Row <> r
ActiveCell.Offset(1, 0).EntireRow.Insert
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1, 0).EntireRow.PasteSpecial
Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0,
248)).Clear
ActiveCell.Offset(1, 7).Select
If ActiveCell.Row = r + 1 Then Exit Sub
If ActiveCell = "" Then ActiveCell.End(xlDown).Select
r = Range("h65000").End(xlUp).Row + 1
Wend
End Sub
Camille
-----Message d'origine-----
Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour
automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8
colonnes, comment
1)copier cette ligne
2)insérer une nouvelle ligne en dessous
3)la coller dans ma nouvelle ligne insérée et supprimer
la 8ème case de
cette nouvelle ligne
4)recommencer les trois premières actions tant que ma
nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
Pas très optimisé mais fonctionne, si tu désires bien recopier une ligne si la colonne H est remplie et supprimer dans cette nouvelle ligne tout ce qui est à partir de cete colonne H :
Sub toto() If Range("h1") = "" Then Range("h1").End(xlDown).Select Else Range("h1").Select End If r = Range("h65000").End(xlUp).Row While ActiveCell.Row <> r ActiveCell.Offset(1, 0).EntireRow.Insert ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow.PasteSpecial Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0, 248)).Clear ActiveCell.Offset(1, 7).Select If ActiveCell.Row = r + 1 Then Exit Sub If ActiveCell = "" Then ActiveCell.End(xlDown).Select r = Range("h65000").End(xlUp).Row + 1 Wend End Sub
Camille
-----Message d'origine----- Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8 colonnes, comment
1)copier cette ligne 2)insérer une nouvelle ligne en dessous 3)la coller dans ma nouvelle ligne insérée et supprimer la 8ème case de
cette nouvelle ligne 4)recommencer les trois premières actions tant que ma nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
yves
.
eis
Bonjour Camille j'ai bêtement recopié ton code mais j'ai une erreur de compilation après la ligne "PasteSpecial" ou est mon erreur? "Ellimac" a écrit dans le message de news: 5c9701c3423f$4ab62610$ Bonjour,
Pas très optimisé mais fonctionne, si tu désires bien recopier une ligne si la colonne H est remplie et supprimer dans cette nouvelle ligne tout ce qui est à partir de cete colonne H :
Sub toto() If Range("h1") = "" Then Range("h1").End(xlDown).Select Else Range("h1").Select End If r = Range("h65000").End(xlUp).Row While ActiveCell.Row <> r ActiveCell.Offset(1, 0).EntireRow.Insert ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow.PasteSpecial Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0, 248)).Clear ActiveCell.Offset(1, 7).Select If ActiveCell.Row = r + 1 Then Exit Sub If ActiveCell = "" Then ActiveCell.End(xlDown).Select r = Range("h65000").End(xlUp).Row + 1 Wend End Sub
Camille
-----Message d'origine----- Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8 colonnes, comment
1)copier cette ligne 2)insérer une nouvelle ligne en dessous 3)la coller dans ma nouvelle ligne insérée et supprimer la 8ème case de
cette nouvelle ligne 4)recommencer les trois premières actions tant que ma nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
yves
.
Bonjour Camille
j'ai bêtement recopié ton code mais j'ai une erreur de compilation après la
ligne "PasteSpecial"
ou est mon erreur?
"Ellimac" <Ellimac_CremelierNopub@hotmail.com> a écrit dans le message de
news: 5c9701c3423f$4ab62610$a401280a@phx.gbl...
Bonjour,
Pas très optimisé mais fonctionne, si tu désires bien
recopier une ligne si la colonne H est remplie et
supprimer dans cette nouvelle ligne tout ce qui est à
partir de cete colonne H :
Sub toto()
If Range("h1") = "" Then
Range("h1").End(xlDown).Select
Else
Range("h1").Select
End If
r = Range("h65000").End(xlUp).Row
While ActiveCell.Row <> r
ActiveCell.Offset(1, 0).EntireRow.Insert
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1, 0).EntireRow.PasteSpecial
Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0,
248)).Clear
ActiveCell.Offset(1, 7).Select
If ActiveCell.Row = r + 1 Then Exit Sub
If ActiveCell = "" Then ActiveCell.End(xlDown).Select
r = Range("h65000").End(xlUp).Row + 1
Wend
End Sub
Camille
-----Message d'origine-----
Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour
automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8
colonnes, comment
1)copier cette ligne
2)insérer une nouvelle ligne en dessous
3)la coller dans ma nouvelle ligne insérée et supprimer
la 8ème case de
cette nouvelle ligne
4)recommencer les trois premières actions tant que ma
nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance
Bonjour Camille j'ai bêtement recopié ton code mais j'ai une erreur de compilation après la ligne "PasteSpecial" ou est mon erreur? "Ellimac" a écrit dans le message de news: 5c9701c3423f$4ab62610$ Bonjour,
Pas très optimisé mais fonctionne, si tu désires bien recopier une ligne si la colonne H est remplie et supprimer dans cette nouvelle ligne tout ce qui est à partir de cete colonne H :
Sub toto() If Range("h1") = "" Then Range("h1").End(xlDown).Select Else Range("h1").Select End If r = Range("h65000").End(xlUp).Row While ActiveCell.Row <> r ActiveCell.Offset(1, 0).EntireRow.Insert ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow.PasteSpecial Range(ActiveCell.Offset(0, 7), ActiveCell.Offset(0, 248)).Clear ActiveCell.Offset(1, 7).Select If ActiveCell.Row = r + 1 Then Exit Sub If ActiveCell = "" Then ActiveCell.End(xlDown).Select r = Range("h65000").End(xlUp).Row + 1 Wend End Sub
Camille
-----Message d'origine----- Bonjour à tous
je suis sous excel 97 et je cherche un moyen pour automatiser une manip.
pour un tableau commençant en A1, si une ligne dépasse 8 colonnes, comment
1)copier cette ligne 2)insérer une nouvelle ligne en dessous 3)la coller dans ma nouvelle ligne insérée et supprimer la 8ème case de
cette nouvelle ligne 4)recommencer les trois premières actions tant que ma nouvelle ligne collée
dépasse les 8 colonnes! ouf!
si quelqu'un à une solution je le remerçie d'avance