그래서이 스레드에서 물어보십시오. IronPython - Run an Excel Macro하지만 충분한 평판이 없습니다.IronPthon을 사용하여 Spotfire에서 VBA 매크로 실행
대략적으로 링크에 주어진 코드를 따라 특정 위치에 파일을 저장하는 코드를 만든 다음 거기에있는 통합 문서를 열고 매크로를 호출하여 작은 양의 조작을 수행합니다. .xls로 다운로드 한 데이터를 더보기 좋게 만들 수 있습니다.
이제 코드의이 특정 부분 (아래)에서 문제를 격리했습니다.
Spotfire는 일반적으로 유익하지 않지만 여기에 대해서는 거의 알려주지 않습니다. .NET과 관련된 것으로 보이지만 그건 내가 말할 수있는 전부입니다.
Traceback (most recent call last): File "Spotfire.Dxp.Application.ScriptSupport", line unknown, in ExecuteForDebugging File "", line unknown, in StandardError: Exception has been thrown by the target of an invocation.
스크립트
from Spotfire.Dxp.Data.Export import DataWriterTypeIdentifiers
from System.IO import File, Directory
import clr
clr.AddReference("Microsoft.Office.Interop.Excel")
import Microsoft.Office.Interop.Excel as Excel
excel = Excel.ApplicationClass()
excel.Visible = True
excel.DisplayAlerts = False
workbook = ex.Workbooks.Open('myfilelocation')
excel.Run('OpenUp')
excel.Run('ActiveWorkbook')
excel.Run('DoStuff')
excel.Quit()
매크로에서 무엇을하고 있습니까? 프로세스에서 모두 제거 할 수 있습니다. http://xyproblem.info/ – scsimon
답장을 보내 주셔서 감사합니다. 매크로는 불행하게도 필요합니다. 적어도 나는 그렇다고 믿습니다. 기본적으로 spotfire의 조건부 채색을 유지하는 Excel 테이블을 내보내려고합니다. 내가 생각했던 간단한 요청. 잠재적으로 html 테이블로 변환 한 다음 HTML에서 조건부 컬러링을 사용하기 때문에 거기에서 Excel로 내보내 보았습니다. html/spotfire/excel 솔루션이 좋지 않았습니다.그래서 저는 저에게 필요한 작업을 수행 할 수있는 중앙화 된 매크로를 가지고 있다고 생각하고 있습니다. 그렇게하면 여러 대시 보드에 푸시 될 수 있습니다. @scsimon –
@scsimon 어느 쪽이든 나는 spotfire 내에서 Excel의 기능에 액세스 할 수 있다는 것이 좋을 것이라고 생각합니다. 테이블을 내보낼 잠재력을 상상해보십시오. 중요한 테이블 작업을 수행 한 다음 해당 데이터와의 실제 연결에서 해당 작업을 잠재적으로 다시 불러 들일 수 있습니다. 그것은 spotfire의 기능에 또 다른 레이어를 추가 할 것입니다. 일상적인 사용을위한 것은 아니지만 ... –