검색 한 내용과 검색 한 내용 중 직접적으로 찾은 내용이 없습니다 (또는 내 검색이 단어 조합에 부딪치지 않았습니다).자동화 된 Excel 파일을 저장하도록 사용자에게 묻는 메시지
C#에서는 Interop.Excel을 사용하여 Excel 시트를 만들었습니다.이 시트에서는 데이터를 삽입하고 차트를 만듭니다. xlWorkBook.SaveAs 할 때이 모든 작동합니다.
사용자가 자동 통합 문서를 자신의 파일 이름과 함께 넣으라는 메시지가 표시됩니다. 나는 (= http://p2p.wrox.com/vb-how/63900-disabling-second-excel-save-prompt.html) 그가 기본적으로 새로운 SaveFileDialog를 시도한 다음 == OK이면 Excel 시트를 작성한 다음 그의 workbook.SaveAs (FilePathFromSaveAsDialog)가 프롬프트를 표시한다고 말합니다. 시도 할 때 "응용 프로그램이 UserInteractive 모드에서 실행되고 있지 않을 때 모달 대화 상자를 표시하는 것은 유효한 작업이 아닙니다"오류가 발생합니다. 내 모든 코드를 붙여 것입니다 있지만 그러나 그것의 단지이며, 별도의 시스템에 :
using Excel = Microsoft.Office.Interop.Office
//....then on click of link button....
Excel.Application xlApp;
Excel.Workbook xlWorbook;
Excel.Workbooks xlWorkbooks;
Excel.Sheets xlSheets;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.ApplicationClass();
xlWorkBooks = xlApp.Workbooks;
xlWorkBook = xlWorbooks.Add(misValue);
xlSheets = xlWorkBook.Worksheets;
xlWorkSheet = (Excel.Worksheet)xlSheets.get_Item(1);
//....Now I fill my Excel sheet data and make my chart >>> then I close like below...
xlApp.DisplayAlerts = true;
//HERE IS WHERE I WANT TO EITHER PASS THE PATH AND FILE NAME FROM USER OR USE A PROMPT
xlWorkBook.SaveAs("Test.xls", Excel.XFileFormat.XlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
//finally I release all my objects via Marshal.ReleaseComObject then GC.Collect
데이터 그리드 다음 프롬프트에 난 그냥 RenderControl가 올 때 Thnx ... 내가 과거에 Response.AddHeader의 일을했다. 그러나이 시나리오에서는 파일을 컴퓨터 나 서버에 저장하지 않고 다시 가져오고 싶지 않습니다. 하나의 결과물을 원합니다. – Kevin
@Kevin 예를 들어 Response.BinaryWrite를 사용하여 파일을 서버에 저장하지 않고 사용자에게 바이트 배열로 전달할 수 있습니다. 그게 당신을위한 옵션입니다. – TheBoyan
BinaryWrite를 사용하지 않으므로 사전에 조사해야합니다. 필자의 주요 관심사는 알 수 없음 (사용자가 파일 이름을 변경하고 시스템이 다운되고 씬 클라이언트에 있고 드라이브가 다르게 매핑되는 경우로드/충돌이 발생할 수 있음) 여러 사용자가 한 번에이 작업을 수행 할 경우 작성하십시오. – Kevin