sans avoir à répéter de multiples manipulations.
Ainsi, une petite routine vous permettra agréablement (j'espère), d'exécuter des séries d'interlignes,
avec le pas de son choix sur la feuille courante du classeur courant.
'===================
'Auteur martinbrait
'Insérer un interligne, dans la page active
'de la feuille courante
'paramètres :
'RowMin pour préciser, si on veut la ligne plancher
'RowMax pour préciser, si on veut la ligne plafond
'Pas, pour préciser le nombre de ligne que l'on veut "sauter"
'entre chaque ligne pleine.
'ATTENTION : En pratique, et par prudence pour ne pas planter
'libre office ne jamais tenter plus de 4000 insertions sans enregistrement tampon
'dans un même temps pour éviter le dépassement de capacité du thread.
'====================
Code : Tout sélectionner
Sub TestInsererInterligne()
InsererDesINterLignes(3,3000,2)
End Sub
'==========================
Sub InsererDesInterlignes(Optional RowMin As Integer, Optional RowMax As Integer,Optional Pas As Integer)
Dim Doc As Object
Dim oSheet As Object
Dim RowIndex as Integer
Dim NbRows As Variant
If IsMissing(RowMin) Then
RowMin = 1
End If
If IsMissing(RowMax) Then
RowMax = 3000
End If
If IsMissing(Pas) Then
Pas = 2
End If
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName(ThisComponent.CurrentController.ActiveSheet.Name)'Pour en extraire une variable objet
For RowIndex = RowMin To RowMax Step Pas
'insert a row:
oSheet.Rows.insertByIndex(RowIndex,1)
Next
NbRows = CInt((RowMax-RowMin)/2)
MsgBox(NbRows & " lignes ont bien été insérées",48,"INSERTIONS REUSSIES")
End Sub
Merci et à bientôt !