Вы можете использовать xlsxwriter
, а из документов похоже, что "Пример 6" - это то, что вам нужно.
Чтобы применить это ко всем ячейкам в этом столбце, после экспорта фрейма данных обведите все ячейки в столбце, для которых вы хотите иметь раскрывающиеся списки, и примените проверку данных к ячейкам. Как то так:
for i in range(1, len(rows)):
worksheet.data_validation('B' + i, {'validate': 'list',
'source': ['option1', 'option2', 'option3']})