Excel Win32com Программирование с Python. Проходные параметры для функционирования
Вопрос
Я подозреваю, что на этот вопрос есть легкий ответ, но я нигде не могу его найти! Я пишу функцию, чтобы построить много данных в Excel, и я контролирую график с помощью Python. Я сгенерировал все диаграммы, и каждая диаграмма является его собственным листом, но они не в порядке. Код VBA для этого:
Sheets("Chart1").Move After:=Sheets(3)
Это займет «chart1» и переместит его после 3 -го листа. Как мне сделать это в Python? Я знаю, что код - это нечто вроде:
xlChart.Move(Before,After)
Как мне сообщить Python до и после параметров? Я думаю, что главное в том, что я не понял, как пройти параметры в программировании Win32com.
Заранее благодарю за любую помощь!
Решение
Вот очень простой пример:
from win32com import client
excel=client.Dispatch("Excel.Application")
excel.Visible=True
book=excel.Workbooks.Open("c:/desktop/test.xlsx", False, True)
sheet=book.Worksheets(1)
chart=book.Charts.Add()
chart.SetSourceData(sheet.Range("$A:$B"))
chart.Move(Before=book.Worksheets("Sheet2"))
chart.Move(book.Worksheets("Sheet2"))#equivalent to previous line
chart.Move(book.Worksheets("Sheet2"), None)#also equivalent
chart.Move(After=book.Worksheets("Sheet2"))
chart.Move(None,book.Worksheets("Sheet2"))#equivalent to previous line
Я пытался показать различные варианты работы с дополнительными параметрами, которые являются важными проблемами с программированием Excel Com. Вы можете использовать прохождение позиционного параметра и опустить параметры с конца. Или вы можете пройти None
который эквивалентен. Наконец, вы можете использовать названные параметры.