Comment insérer ligne égale valeur cellule ?

dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour pourriez-vous m'aider ?
Je cherche à écrire une macro me permettant d'insérer des lignes en fonction du numéro dans la cellules.
Pour être plus claire, un exemple : Dans A12 j'ai la valeur 16, je veux que ma ligne soit copier en A16.
J'ai environ 1000 lignes à traiter.

Exemple sous excel : Avant


Après



Est-ce possible ?
Merci.
A voir également:

1 réponse

M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 
Bonjour,

Il faudrait savoir aussi, si les lignes qui doivent être remplies, contiennent des données avec un numéro qui ne correspond pas
ex:
en A1 j'ai 12, je copie la ligne 1 pour la mettre en ligne 12, mais la cellule A12 contient déjà 14, qui devrait être déplacée
Si toutes les lignes sont remplies, le mieux est un filtrage par la colonne A
0
dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour j'ai réussi a faire un déplacement des nombres mais je n'arrive toujours pas a déplacés le texte.
Le code pour l'instant ressemble a sa :

Sub Lecture_ligne()
'Compter le nombres de lignes
nb_lignes = WorksheetFunction.CountA(Range("A:A"))

For i = 1 To 1000
Range("A" & i).Select
n = Range("A" & i).Value
If i < n Then
Selection.Insert Shift:=xlDown
End If
Next

End Sub
0
dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Mon code fonctionne puisque dans le fichier réel à traiter, il n'y a aucun espace entre chaque nombre. Si vous avez une solution pour que le texte ce déplace en même temps que le nombre sa serait super.
0
M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention   285
 
Re,
Si tu déplaces une ligne pour la mettre dans une autre ligne déjà remplie, tu perd ses données.
Un p’tit classeur avec 10/15 données serait mieux pour régler le soucis :yum:

Tu vas dans https://www.cjoint.com/ ou dans https://mon-partage.fr/
Tu cliques sur "PARCOURIR" pour sélectionner ton fichier
Clic le bouton "CREER LE LIEN"
Clic droit quand le lien est créé "COPIER LE LIEN"
Sur ton message Clic droit "Coller".
0
dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   > M-12 Messages postés 1332 Date d'inscription   Statut Membre Dernière intervention  
 
Monsieur M-12 le fichier que je doit traiter a chaque fois et toujours disposer de la même manière (nombre dans la colonne sans interligne). Et le fichier est ré-écrit toute les minutes donc des valeurs déjà écraser. Mais merci quand même une bonne étape dans mon travaille résolu :)
Le reste sera d'implanter ma macro dans le nouveau fichier implanté toutes les minutes, je pense que par un batch cela doit être possible, enfin je l'espère.
0
dede798 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Nouveau code il déplace le texte et les nombres, ne manque plus que à faire fonctionner la macro dès son ouverture si vous avez une idée je suis preneur.
Nouveau code :

Sub Lecture_ligne()
'Compter le nombres de lignes
nb_lignes = WorksheetFunction.CountA(Range("A:A"))

For i = 1 To 1000
n = Range("A" & i).Value
If i < n Then
Range("A" & i).Select
Selection.Insert Shift:=xlDown
Range("B" & i).Select
Selection.Insert Shift:=xlDown
End If
Next

End Sub
0