Intercaler une ligne entre chaque ligne ...

Ctrl-Alt-Suppr

XLDnaute Junior
[RÉSOLU] Intercaler une ligne entre chaque ligne ...

Bonsoir,

J'aimerai intercaler une ligne entre chaque ligne ... et je ne trouve pas comment faire.


En fait, j'ai 4 colonnes, qui une fois concatenées me donne la ligne de texte dont j'ai besoin. J'ai environ 3000 lignes et ça, c'est bon.
Par contre avant de les utiliser, il me faudrait intercaler un même texte entre chaque.

Concrètement, j'ai par exemple ceci : (dans une même colonne)

Code:
fonction(A,"TAB",opération1)
fonction(B,"TAB",opération2)
fonction(C,"TAB",opération3)
fonction(D,"TAB",opération4)
Et j'aimerai obtenir ceci :
Code:
fonction(A,"TAB",opération1)
pause(50)
fonction(B,"TAB",opération2)
pause(50)
fonction(C,"TAB",opération3)
pause(50)
fonction(D,"TAB",opération4)
pause(50)
J'ai essayé par duplication de plages, je n'y arrive pas.
J'ai aussi essayé un truc tout simple, je rajoute 2 colonnes, l'une est une addition me permettant d'obtenir la valeur de la case d'au dessus +0,49999 et dans la deuxième c'est cette valeur arrondie.
Ainsi, j'obtiens quelque chose ressemblant à ça :
Code:
E15
E15
E16
E16
E17
E17
...
L'idée, c'était d'obtenir 2 colonnes, l'une remplie de PAUSE(50) et l'autre des références de cellules correctes, comme ça, j'aurais pu dupliquer le résultat.
Le problème c'est que je n'arrive pas à convertir un texte en référence de celulle.
En gros, si G33 affiche E17, et que j'utilise cette valeur dans une formule en H33, et bien Excel lit E17 .... alors que moi, je voudrais qu'il aille lire le contenu de la case E17.


Quelqu'un sait comment convertir un résultat en "référence de cellulle" ?
Ou mieux encore, si vous avez une idée pour intercaler des lignes ...

D'avance, merci.
 
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Intercaler une ligne entre chaque ligne ...

Bonsoir,

Un exemple à adapter à ton code:

Code:
Sub intercale()
der_ligne = [A65536].End(xlUp).Row
For ligne = der_ligne To 2 Step -1
    If ligne = der_ligne Then
        Range("A" & ligne + 1).Value = "pause(50)"
        Rows(ligne).Insert
        Range("A" & ligne).Value = "pause(50)"
    Else
        Rows(ligne).Insert
        Range("A" & ligne).Value = "pause(50)"
    End If
Next ligne
End Sub
 

Ctrl-Alt-Suppr

XLDnaute Junior
Re : Intercaler une ligne entre chaque ligne ...

Merci pour cette réponse rapide, mais je suis débutant ...
Je ne me sers que des fonctions internes du logiciel, et côté macros j'en utilise qui proviennent de modules supplémentaires à télécharger, ou tout simplement des exemples fournis sur votre site.

Mais ce code " brut " je ne sais pas trop quoi en faire. :confused:
Je suppose qu'il ne suffit pas de le recopier dans l'éditeur VB et d'enregistrer ...
Un 2ème petit coup de pouce serait le bienvenue.

D'avance merci.
 

skoobi

XLDnaute Barbatruc
Re : Intercaler une ligne entre chaque ligne ...

Re bonjour,

dans l'éditeur VB, menu insertion puis module, tu colles la macro ici.
Ensuite dans excel, tu crés un bouton via la barre d'outil formulaire, puis associe la macro.
Voilà.
 

Ctrl-Alt-Suppr

XLDnaute Junior
Re : Intercaler une ligne entre chaque ligne ...

Tout simplement ...
Ca fonctionne et c'est exactement ce que je cherchais !

Un grand MERCI.



PS : d'une manière générale, bravo à toute l'équipe et à tous les habitués ...
De tous les forums que j'arpente, c'est toujours sur excel-downloads que des réponses de qualité arrivent le plus vite, dans la bonne humeur et la sobriété.
Continuez comme ça ...
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 164
Messages
2 085 877
Membres
103 009
dernier inscrit
dede972