2012-10-09 2 views
0

이 모든 내 지혜의 끝에서 엑셀 14.0 상호 운용성 서비스는 상호 운용성 서비스

나는를 사용하여 VB.NET에서 수행되는 작업하는 동안 엑셀 및 Windows 프롬프트가 계속. 창에서 프롬프트를 계속 가져오고 배치 실행 중간에 탁월합니다.

프로그램은 배치 레코드가있는 통합 문서를 가져 와서 각 배치 레코드에 대한 시뮬레이션을 실행 한 다음 결과를 Excel 파일에 다시 씁니다.

단계 :

  1. 열려있는 통합 문서 통합 문서가 다른 프로그램에서 이미 사용중인 경우 볼 수
  2. 확인하시기 바랍니다.
    1. (사용중인 경우) 우리는 통합 문서를 닫으려고합니다. 그런 다음 다시 시도하기 전에 일정한 시간 동안 기다립니다.
    2. 통합 문서를 사용하지 않는 경우 계속 진행합니다.
  3. 저장하고 파일을 닫습니다 처리되는대로 내용
  4. 마크에게 레코드를 가져옵니다.
  5. 레코드를 처리하십시오.
  6. 통합 문서를 열기 위해 위의 동일한 과정을 수행하십시오.
  7. 결과를 통합 문서에 저장하십시오.
  8. 통합 문서를 닫습니다.
  9. 모든 레코드가 시뮬레이션 될 때까지이 프로세스를 반복하십시오.

확인 문제가 발생할 수 있습니다. 통합 문서가 이미 사용 중이거나 두 프로그램이 동시에 저장 통합 문서와 상호 작용하려고합니다.

이제는 문제가 있습니다. 통합 문서가 두 프로그램에 의해 동시에 상호 작용되는 경우. 파일이 현재 사용 중임을 알리는 메시지가 나타납니다.

내가 설명 할 수없는 또 다른 문제는 파일이 이제 읽기/쓰기, 알림, 취소 옵션으로 수정 될 준비가되었음을 알리는 메시지를 보여줍니다.

이러한 프롬프트를 프로그래밍 방식으로 처리하는 방법을 찾아야합니다. 누구든지 올바른 방향으로 나를 가리킬 수 있다면 나는 매우 위대 할 것입니다.

Dim xlApp As Excel.Application = New Excel.Application 
xlApp.DisplayEvents = False 

을하지만 실제로는 "캐치"프롬프트 및 유용한 일을 할 수있는 방법을 찾을 수 없습니다했습니다

+0

일부 코드를 표시해야합니다. 특히 단계 1부터 단계 2.2까지. – RBarryYoung

답변

0

당신은 설정하여 나타나는 지시를 방지 할 수 있습니다. Interop이 파일을 확보 할 수없는 경우 예외가 발생하는 경우가 종종 있습니다. 예외에는 실제 오류가 무엇인지 구별 할 수있는 방법이 거의 포함되어 있지 않지만 그 시점에서 발생할 수있는 상황에 따라 때로는 해결할 수 있습니다.