2014-07-17 2 views
2

우리는 타사 Excel Addin을 사용하여 Excel 워크 시트의 데이터를 채 웁니다. 자동으로 리본 버튼을 클릭하고 데이터를 처리하는 C# 응용 프로그램 (WinForms 또는 VSTO)을 작성하는 작업이있었습니다.코드 뒤에서 Excel 리본 단추를 누르는 방법

문제는 C# 코드를 사용하여 추가 기능 탭에서 리본 단추를 클릭하는 작업을 자동화하는 방법을 찾을 수 없다는 것입니다.

또한 Win32 API를 사용하여 부모 Excel 창 (SendMessage 사용)에 키 누름을 보내려고했지만 키 누름이 수신되지 않았습니다. (나는 Spy ++를 사용하여 체크했다). 그리고 Add-in 어셈블리에 노출 된 public 메서드를 살펴 보았지만 리본 단추를 클릭하는 것과 같은 기능을하는 공용 메서드는 포함되어 있지 않습니다.

누구든지 C# 코드를 사용하여 Excel (추가 기능) 리본에서 리본 단추를 클릭하는 방법을 알고 있습니까?

답변

1

Excel 응용 프로그램 클래스의 SendKeys 메서드를 확인하십시오. 키를 Excel로 직접 보낼 수 있습니다. Alt 키를 눌러 어떤 단축키가 어떤 버튼/리본 탭에 할당되어 있는지 확인할 수 있습니다. 나는 이것을 사용하여 몇 가지 테스트를 자동화했고 정상적으로 작동했다.

더 복잡한 작업이 필요한 경우 Sikuli도 볼 수 있습니다. 이미지 인식을 기반으로하며 키 누르기 및 클릭을 보내기 위해 Java.Robots 클래스를 사용합니다. UI 작업을 자동화하는 것은 매우 쉽습니다.

관련 문제