C #과 Interop을 사용하여 Excel 저장 원본 변경.이것을 부정하는 방법?

StackOverflow https://stackoverflow.com/questions/29141

  •  09-06-2019
  •  | 
  •  

문제

문제 : Excel 스프레드 시트 템플릿을로드합니다.다른 파일 이름으로 저장 명령을 사용한 다음 interop 개체를 종료합니다.이렇게하면 원본 템플릿 파일이 저장됩니다.좋아하는 결과가 아닙니다. 라코 디스

열린 원본 파일은 c : \ testing \ template.xls입니다. 전달 된 파일 이름은 c : \ testing \ 7777 (date) .xls 입니다.

답변이있는 사람이 있습니까?

(내가 선택한 대답은 wbk.Close ()에 매개 변수가 전달되어야하지만 가장 정확하고 철저했습니다. 감사합니다.)

도움이 되었습니까?

해결책

Excel interop은 매우 고통 스럽습니다.나는 내가 가지고 있던 오래된 프로젝트를 파헤 치고 약간 만져 봤는데 이것이 당신이 찾고있는 것이라고 생각합니다.다른 댓글 작성자도 맞지만, 적어도 내 경험상 VBA에서 동일한 객체 (interop 래퍼없이)를 사용한 경우 예상했던 것보다 SaveAs ()를 호출하는 것이 훨씬 더 많습니다. 라코 디스

모든 Type.Missings를 좋아해야합니다.하지만 필요하다고 생각합니다.

다른 팁

ExcelApplication을 사용하는 대신 Workbook 개체를 사용하고 SaveAs () 메서드를 호출 할 수 있습니다.거기에 업데이트 된 파일 이름을 전달할 수 있습니다.

워크 시트에서 다른 이름으로 저장을 사용해 보셨습니까?

  1. 다른 이름으로 저장
  2. Interop을 수행해야 할 때마다 별도의 VB.NET 클래스 라이브러리를 만들고 VB에 논리를 작성합니다.C #으로 번거롭게 할 가치가 없습니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top