essaie comme ceci, quelques corrections versus ce que tu avais commencé
function myFunction() {
var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Original')
var data = sh.getRange('A2:AO' + sh.getLastRow()).getDisplayValues()
var bd = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('BD')
bd.getRange(2,1,Math.max(3,bd.getLastRow()),bd.getLastColumn()).clearContent()
var level = []
var result=[]
data.forEach(function (d) {
level[d[1]] = [d[2], d[3], d[4], d[5], d[6]]
if (d[1] == 7) {
result=level.flat()
result.push(d[7])
result.push(d[8])
result.push(d[9])
result.push(d[10])
result.push(d[11])
result.push(d[12])
bd.appendRow(result)
}
})
}
mais tu n'auras pas les dates aux niveaux 6, et tu n'auras pas les niveaux 6 sans niveau 7 en dessous
le niveau est en d[1], d[6] ce n'est pas le niveau 6 mais la colonne de la feuille original c'est-à-dire FM_AERA4