Я использую модуль Python 2.6 + xlwt для генерации файлов Excel.
Можно ли включить автофильтр в первый ряд с помощью xlwt, pyExcelerator или чего-либо еще, кроме COM?
Спасибо
AFAIK xlwt не позволяет добавлять фильтр.
Однако вы можете добавить фильтр, используя Марк Хаммонд Python Win32 Extensions . Скачать для 2.6 здесь . Примерно так должно работать (проверено в Python 2.5.4):
from win32com.client import DispatchEx xl = DispatchEx("Excel.Application") xl.Workbooks.Open("c:/excel_file.xls") xl.ActiveWorkbook.ActiveSheet.Columns(1).AutoFilter(1) xl.ActiveWorkbook.Close(SaveChanges=1) xl.Quit() del xl # ensure excel.exe process ends
У меня та же проблема при запуске сервера linux.
Я собираюсь проверить создание файла ODS или XLSX с автофильтром другими средствами, а затем преобразовать их с помощью командной строки libreoffice в «xls».
Я нашел это сообщение в группе Google. Похоже, что это невозможно, к сожалению.