/// <summary> /// GetSaveAsFilename using app.GetSaveAsFilename which allows filters /// </summary> /// <param name="initialFile"></param> /// <param name="filter"></param> /// <param name="defaultExt"></param> /// <param name="title"></param> /// <returns></returns> private static string ShowOfficeSaveAsFileDialog( string initialFile, string filter, string defaultExt, string title) { Microsoft.Office.Interop.Excel._Application app; string fileName = ""; app = new Microsoft.Office.Interop.Excel.Application(); int sfi = SetupFilters(filter, defaultExt, null); // get selected filter index object gfo = app.GetSaveAsFilename(initialFile, filter, sfi, title); if (!(gfo is string) || Lex.IsNullOrEmpty(gfo.ToString())) { fileName = ""; // cancelled, return blank } else { fileName = gfo.ToString(); } ReleaseObject(app); return(fileName); }