Несоответствие типов данных OleDb в выражении критериев

В настоящее время я пытаюсь записать файл excel. Я использую этот фрагмент кода:

public void UpdateExcelFile(string dir, string sheet, string sql) { System.Data.OleDb.OleDbConnection MyConnection; System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand(); MyConnection = new System.Data.OleDb.OleDbConnection(String.Format("provider=Microsoft.Jet.OLEDB.4.0;Data Source='{0}';Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=0;MAXSCANROWS=0\";", dir)); MyConnection.Open(); myCommand.Connection = MyConnection; myCommand.CommandText = sql; myCommand.ExecuteNonQuery(); MyConnection.Close(); if (myCommand != null) { myCommand.Dispose(); myCommand = null; } if (MyConnection != null) MyConnection.Dispose(); } 

Я получаю исключение «несоответствие типа данных в критерии выражения». Мое заявление выглядит следующим образом:

 string cmdString = String.Format("Insert into [{0}] (Customer, Location, CalendarWeek, from, till, [agreed at], [agreed with], [{1}]) values('{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')" , sheetName, getPackaging.Text, getCustomer.Text, getLocation.Text, getCalWeek, getFirstDayOfCalWeek, getLastDayOfCalWeek, getDateOfAgreement.Value.ToString("dd/MM/yyyy"), getNameForPrice.Text, getPrice.Value.ToString()); 

Итак, все преобразуется в строку. В моем файле Excel у меня есть каждый столбец, преобразованный в «стандартный». Почему это происходит? У меня даже установлено свойство MaxScanRows равным 0.

EDIT: вот cmdString

 Insert into [Sheet1$] (Customer, Location, CalendarWeek, from, till, [agreed at], [agreed with], [10x500]) values('A','City','1','02.01.2016','08.01.2016','05.03.2016','Test','3') 

Interesting Posts
Давайте будем гением компьютера.