Ведущий Excel из Python в Windows

Простое решение для Groovy:

solutionArray.sort{ new Random().nextInt() }

Это сортирует все элементы списка массивов случайным образом, который архивирует желаемый результат перетасовки всех элементов.

41
задан YGA 14 January 2009 в 12:53
поделиться

3 ответа

Для управления Excel предлагает pywin32 использования, как @igowen.

Примечание, что возможно использовать статическую отправку. Используйте makepy.py из pywin32 проекта создать модуль Python с обертками Python. Используя сгенерированные обертки упрощает разработку, так как, например, ipython дает Вам заполнение клавишей Tab и справку во время разработки.

Статический пример отправки:

x:> makepy.py "Microsoft Excel 11.0 Object Library"
...
Generating...
Importing module
x:> ipython
> from win32com.client import Dispatch
> excel = Dispatch("Excel.Application")
> wb = excel.Workbooks.Append()
> range = wb.Sheets[0].Range("A1")
> range.[Press Tab]
range.Activate                 range.Merge
range.AddComment               range.NavigateArrow
range.AdvancedFilter           range.NoteText
...
range.GetOffset                range.__repr__
range.GetResize                range.__setattr__
range.GetValue                 range.__str__
range.Get_Default              range.__unicode__
range.GoalSeek                 range._get_good_object_
range.Group                    range._get_good_single_object_
range.Insert                   range._oleobj_
range.InsertIndent             range._prop_map_get_
range.Item                     range._prop_map_put_
range.Justify                  range.coclass_clsid
range.ListNames                range.__class__
> range.Value = 32
...

Ссылки на документацию:

46
ответ дан codeape 23 September 2019 в 15:21
поделиться

Я сделал это при помощи pywin32. Это не особенно приятное впечатление, так как нет действительно никакой абстракции; это похоже на использование VBA, но с синтаксисом Python. Вы не можете полагаться на docstrings, таким образом, Вы захотите иметь MSDN удобная ссылка Excel (, http://msdn.microsoft.com/en-us/library/aa220733.aspx - то, что я использовал, если я помню правильно. Необходимо быть в состоянии найти документы Excel 2007, если Вы роете вокруг немного.).

См. здесь для простого примера.

from win32com.client import Dispatch

xlApp = Dispatch("Excel.Application")
xlApp.Visible = 1
xlApp.Workbooks.Add()
xlApp.ActiveSheet.Cells(1,1).Value = 'Python Rules!'
xlApp.ActiveWorkbook.ActiveSheet.Cells(1,2).Value = 'Python Rules 2!'
xlApp.ActiveWorkbook.Close(SaveChanges=0) # see note 1
xlApp.Quit()
xlApp.Visible = 0 # see note 2
del xlApp

Удачи!

21
ответ дан brownan 23 September 2019 в 15:21
поделиться

Я работал над домашним проектом в прошлом году, который вовлекает клиент, записанный как Python плагин Excel. Проект является по существу базой данных онлайн, упрощенной для доступа конечных пользователей. Плагин Excel позволяет пользователям запрашивать данные из базы данных для отображения в Excel.

я никогда не становился очень далеким с плагином Excel, и мой код для него немного ужасен. Но, то, что я действительно имею, находится под лицензией BSD и доступный через Базар по телефону

http://www.launchpad.net/analyz/trunk

, клиент не будет работать, так как у меня нет общедоступного сервера, работающего прямо сейчас, но по крайней мере можно посмотреть на то, что я сделал с кодом, чтобы получить некоторое представление, как это могло работать. Код также покажет Вам, как создать диалоговое окно MFC в 100% Python.

1
ответ дан meagar 23 September 2019 в 15:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: