Kopiowanie z .csv do .xlsx

0

Witam,

Piszę aplikację która pozwoli mi z gotowego pliku .csv przekopiować dane do odpowiednich komórek w pliku .xlsx.
Niestety obecny kod kopiuje surowy plik .csv,tzn wszystko z przecinkami itp. do pierwszej komórki, która jest podana w kodzie.
Ktoś ma jakieś pomysły jak przekopiować dane z .csv tak aby excel je dobrze zinterpretował?

 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Excel = Microsoft.Office.Interop.Excel;
namespace Kreator
{
    class Program
    {
        static void Main(string[] args)
        {
            Excel.Application srcApp;
            Excel.Workbook srcWorkbook;
            Excel.Worksheet srcWorksheet;
            

            Excel.Application destApp;
            Excel.Workbook destWorkbook;
            Excel.Worksheet destWorksheet;
            

            string srcPath = "C:\\Users\\Desktop\\Raport.csv";
            string destPath = "C:\\Users\\Desktop\\XXX.xlsx";


            //Otwieranie pierwszej aplikacji excela - raportu

            srcApp = new Excel.Application();
            srcWorkbook = srcApp.Workbooks.Open(srcPath);
            srcWorksheet = srcWorkbook.Worksheets.get_Item(1);


            //Otwieranie templatki

            destApp = new Excel.Application();
            destWorkbook = destApp.Workbooks.Open(destPath,0,false);
            destWorksheet = destWorkbook.Worksheets.get_Item(1);

            //Kopiowanie


            Excel.Range srcRange = srcWorksheet.get_Range("A1", "C20");
            Excel.Range destRange = destWorksheet.get_Range("C10","E29");

            srcRange.Copy(Type.Missing);
            destRange.PasteSpecial(Microsoft.Office.Interop.Excel.XlPasteType.xlPasteValues, Microsoft.Office.Interop.Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone);

            //Zapisywanie wyniku

            destWorkbook.SaveAs("C:\\Users\\Desktop\\GotowyPlik" + DateTime.Now.ToString("MM_dd_yyyy") + ".xlsx");

            //Sprzątanie

            srcApp.Application.DisplayAlerts = false;
            destApp.Application.DisplayAlerts = false;
            srcWorkbook.Close(false, null, null);
            destWorkbook.Close(true, null, null);
            destApp.Quit();
            srcApp.Quit();

        }
    }
}

Z góry dziękuje wszystkim za pomoc.

0

Wczytuj ten CSV ręcznie i sam przypisuj odpowiednie dane do komórek.

1 użytkowników online, w tym zalogowanych: 0, gości: 1