Конечно, для LibreOffice тоже можно написать макрос, который разобьет файл на несколько меньших файлов по заданному количеству строк. Вот пример такого макроса:
Sub SplitFile
Dim Doc As Object
Dim Sheet As Object
Dim RowCount As Long
Dim FileNum As Integer
Dim FileName As String
Dim i As Long
Dim j As Long
Dim ChunkSize As Long
' Укажите путь к вашему файлу
Doc = ThisComponent
Sheet = Doc.Sheets(0)
RowCount = Sheet.Rows.Count
ChunkSize = 1000 ' Размер куска
' Цикл для разделения на куски
For i = 0 To RowCount Step ChunkSize
FileNum = FreeFile()
' Укажите путь и имя файла для сохранения
FileName = "Новый файл " & Int(i / ChunkSize) + 1 & ".ods"
Open FileName For Output As #FileNum
' Копирование данных в новый файл
For j = i To i + ChunkSize - 1
If j > RowCount Then Exit For
For k = 0 To Sheet.Columns.Count - 1
Print #FileNum, Sheet.getCellByPosition(k, j).String
Next k
Print #FileNum, ""
Next j
Close #FileNum
Next i
End Sub
Этот макрос будет разбивать текущий лист в LibreOffice Calc на файлы по 1000 строк и сохранять каждый файл с уникальным именем, начиная с "Новый файл 1.ods". Вы можете изменить этот код, чтобы настроить количество строк, используемое для разделения, и имя файла, куда будут сохраняться данные.