Добрый день. Столкнувшись с проблемой. Существует задача открыть файл * .txt в Excel.Передача данных из txt-файла в книге Excel
Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
if (xlApp == null)
{
TaskDialog.Show("ups", "Where's your Excel?!");
}
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
xlApp.Workbooks.OpenText
(
@"C:\newPath\OveralFile.txt",
Excel.XlPlatform.xlWindows,
1,
Excel.XlTextParsingType.xlDelimited,
Excel.XlTextQualifier.xlTextQualifierDoubleQuote,
true,
true,
false,
false,
false,
false,
Type.Missing,
misValue,
Type.Missing,
".",
","
);
xlWorkBook.SaveAs(@"C:\newPath\csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
Marshal.ReleaseComObject(xlWorkSheet);
Marshal.ReleaseComObject(xlWorkBook);
Marshal.ReleaseComObject(xlApp);
После того, как книга кодов существует, но пуста. Он выглядит как текстовый документ.
Что я сделал не так?
Вы уверены, что разделитель является вкладкой? –
Также возможно, что вы пропустили некоторые поля для 'Sub OpenText (имя файла как String, [Origin], [StartRow], [DataType], [TextQualifier As XlTextQualifier = xlTextQualifierDoubleQuote], [последовательныйDelimiter], [Tab], [точка с запятой], [Comma ], [Space], [Other], [OtherChar], [FieldInfo], [TextVisualLayout], [DecimalSeparator], [ThousandsSeparator], [TrailingMinusNumbers], [Local]) 'eg предположим, что у вас должно быть 'false' для' OtherChar' (а не 'misValue') и что-то для' TrailingMinusNumbers' и 'Local'? –
Да, я уверен, что разделитель - это вкладка. Текстовый документ создается программно – Kuvon