1

My requirement is to export some data records from my application to a excel file.For this i am creating a temporary .csv file in between and later opening it in excel using "QueryTableInterface" and saving it as Excel file. Now the problem is if the user enter some newline character at first place than in the created excel for every newline character a new line is inserted, but i want that if any column value has multiple lines than it should come inside a single cell in excel (at last). Can u please suggest me a way/workaround to handle this. I am stuck here.

My code looks like this:

private void ConvertCSVToExcel(string tempLocation)
    {
    Microsoft.Office.Interop.Excel.Range range = m_xlSheet.get_Range("$A$1");
    var m_objQryTables = m_xlSheet.QueryTables;
    var m_objQryTable =     (Microsoft.Office.Interop.Excel._QueryTable)m_objQryTables.Add("TEXT;"+
tempLocation, range);
     m_objQryTable.FieldNames = true;
     m_objQryTable.RowNumbers = false;
     m_objQryTable.FillAdjacentFormulas = false;
     m_objQryTable.PreserveFormatting = true;
     m_objQryTable.RefreshOnFileOpen = false;
     m_objQryTable.RefreshStyle =       Microsoft.Office.Interop.Excel.XlCellInsertionMode.xlInsertEntireRows;
     m_objQryTable.SavePassword = false;
     m_objQryTable.SaveData = true;
     m_objQryTable.AdjustColumnWidth = true;
     m_objQryTable.RefreshPeriod = 0;
     m_objQryTable.TextFilePromptOnRefresh = false;
     m_objQryTable.TextFilePlatform = 28591;
     m_objQryTable.TextFileStartRow = 1;
     m_objQryTable.TextFileParseType = Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited;
     m_objQryTable.TextFileTextQualifier = Microsoft.Office.Interop.Excel.XlTextQualifier.xlTextQualifierDoubleQuote;
     m_objQryTable.TextFileConsecutiveDelimiter = true;
     m_objQryTable.TextFileTabDelimiter = true;
     m_objQryTable.TextFileSemicolonDelimiter = false;
     m_objQryTable.TextFileCommaDelimiter = true;
     m_objQryTable.TextFileSpaceDelimiter = false;
     m_objQryTable.TextFileTrailingMinusNumbers = true;
     m_objQryTable.Refresh(false);
}



Thanks in advance

0 Answers0