Inserer une ligne vide et la compléter

Résolu/Fermé
Signaler
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015
-
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015
-
Bonjour,

Je cherche à développer une macro pouvant exécuter les actions suivantes :
1. Insérer une ligne
j'ai utilisé le codage suivant :
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

2. Compléter cette ligne,
en colonne T U W : recopier la cellule précédente
en colonne V W : insérer du text
en colonne X : recopier Y
en colonne Y : recopier X
sur cette partie je bloque

Merci de votre aide,

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.

4 réponses

Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
Bonjour

Un exemple
http://www.cjoint.com/c/EFxoHIpiJjg

Cdlmnt
0
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015

Merci,
Je vous apporte quelques précisions sur le résultat attendu,
J'ai recopié votre code dans mon fichier, mais le résultat ne me convient pas,

Le résultat attendu est le suivant :
par exemple suite à l'insertion de la ligne n°2,
Recopie de T1 en T2
Recopie de U1 en U2
Insertion du texet "530000" en V2
Insertion du texte "Caisse" en W2
Recopie Y1 en X2 - cela fonctionne
Recopie X1 en Y2 - cela fonctionne

Merci de votre aide qui m'est très précieuse,
0
Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
Recopie de T1 en T2
Recopie de U1 en U2
Insertion du texet "530000" en V2
Insertion du texte "Caisse" en W2

J'avoue ne pas trop comprendre, il me semble que ces 4 résultats sont conformes à ta demande
Ce que je t'ai donné est à adapter à ton fichier, tu y trouves la copie de valeur, de formule, l'insertion de texte (à toi de les définir), et l'inversion des colonnes X et Y
une autre version
http://www.cjoint.com/c/EFxrh2uJs8g

Cdlmnt
0
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015

Très bien merci beaucoup de ton aide, je n'avais pas tout compris le premier coup,

Par contre un message d'erreur apparait à la fin de l'exécution de la macro, mais le résultat est celui attendu,

"Erreur d'execution '1004':

La méthode 'Range' de l'objet '_Global' a échoué "
0
Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
"Erreur d'execution '1004':
La méthode 'Range' de l'objet '_Global' a échoué "


Sur quelle ligne se produit l'erreur ?
Est ce que cette erreur ne proviendrait pas d'une tentative d'accéder à la ligne 0 ? As tu laissé lideb = 3 ?

Cdlmnt
0
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015

L'erreur intervient en fin de traitement donc je pense sur la première ligne,

Excuse moi mais je ne sais pas à quoi correspond lideb = 3,

Si je dois laisser une ligne ou plusieurs sur le fichier, il est vrai que je ne l'ai pas fais sur mon fichier,

Cordialement.
0
Messages postés
10197
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
14 janvier 2022
2 275
Chez moi, je n'ai pas d'erreur !

Lorsque l'erreur se produit, excel te place dans le code et la ligne où se produit l'erreur est en jaune. Tu passes sur les variables de cette ligne et tu notes leur valeur

lideb = 3 est la première ligne concernée par l'insertion dans la feuille

Cdlmnt
0
Messages postés
5
Date d'inscription
mardi 23 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015

Merci vraiment de ton aide
0