Je me permet de solliciter à nouveau la communauté, suite à la problématique déjà formulées dans le post suivant : https://forum.openoffice.org/fr/forum/viewtopic.php?f=8&t=62846#p342474
En effet, je souhaitais effectuer une copie et un collage spécial d'une plage de cellules d'une feuille, vers une autre feuille, en fin de tableau et à la première ligne non remplie.
Un code fonctionnel m'a été proposé par Dude, seulement je n'avais pas fait attention, il ne prend pas en compte le collage spécial.
- Code : Tout sélectionner AgrandirRéduire
Sub CopierCollerEntreFeuilles()
nLigne = RENVOI_LIGNE_VIDE("Cumul.A1:A1000")
oDoc = ThisComponent
oCopieFeuille= oDoc.Sheets.getByName("feuille_initiale") ' Nom de la feuille à copier
oColleFeuille = oDoc.Sheets.getByName("Cumul") ' Nom de la feuille où coller
oPlage = oCopieFeuille.getCellRangeByName("A2:D16") ' La plage à copier
oColleCellule = oColleFeuille.getCellByPosition(0, nLigne) ' Cellule où démarre le collage
oColleFeuille.copyRange(oColleCellule.CellAddress, oPlage.RangeAddress)
End Sub
Function RENVOI_LIGNE_VIDE(sPlage)
aPlage = split(sPlage,".")
oFeuil = ThisComponent.Sheets.getByName(aPlage(0))
oZone = oFeuil.getCellRangeByName(aPlage(1))
oPlage = oZone.queryEmptyCells.RangeAddresses
RENVOI_LIGNE_VIDE = oPlage(0).StartRow
End Function
Je joins un modèle résumant la problématique et les macros dont je disposais, mais en deux parties, que je ne parvenais pas à cumuler.
En vous remerciant par avance, pour l'aide que vous pourrez m'apporter.
Cordialement,