Jetzt klappt's.
OSS-Hinweis 124658 brachte mich auf die richtige Spur:
create object h_excel 'Excel.Application'.
set property of h_excel 'Visible' = excel_false.
call method of h_excel 'Workbooks' = h_book.
call method of h_book 'OPEN' exporting #1 = p_file.
free_object h_book.
get property of h_excel 'ACTIVEWORKBOOK' = h_book.
get property of h_book 'ReadOnly' = locked.
* if locked = excel_false.
if locked-header(1) = '0'.
call method of h_excel 'CELLS' = zelle
exporting #1 = zeile #2 = p_spalte.
set property of zelle 'VALUE' = wert_teuro.
free object zelle.
call method of h_book 'Save' = h_save.
free object h_save.
else.
write: 'Die Mappe ist durch einen anderen Benutzer gesperrt'.
endif.
free object locked.
free object h_book.
call method of h_excel 'Quit'. "erzeugt ausnahmsweise wohl kein Objekt
free object h_excel.