Как с помощью win32com.client выставить формат чисел финансовый(currency)?
Пытаюсь выставить финансовый формат чисел используя win32com. Алгоритм такой: записать в экселе макрос с выставлением финансового формата и потом перенести код в Python. Варианты кода:
excel_app.ActiveSheet.Range('A2:D3').NumberFormat = '_-* #,##0.00 [$?-419]_-;-* #,##0.00 [$?-419]_-;_-* ""-""?? [$?-419]_-;_-@_-'
##########
cells = excel_app.Range(f'A2:D3')
cells.Select()
selected = excel_app.Selection
selected.NumberFormat = '_-* #,##0.00 [$?-419]_-;-* #,##0.00 [$?-419]_-;_-* ""-""?? [$?-419]_-;_-@_-'
Этот код падает с ошибкой 'Нельзя установить свойство NumberFormat класса Range'. Опытным путём выяснил, что надо разделителем целой и дробной части поставить ",", а тысячи отделить пробелом, например. Тогда на вид формат будет неотличим от финансового. Но Excel опознает его как "все форматы". Есть ли какой-то способ выставить формат так, чтобы он и опознавался как финансовый? Может что-то в win32.com.constants?