2010-05-08 6 views
1

Я пытаюсь вставить текстовые файлы в ячейку excel с помощью Querytables.Add; нет ошибки, но рабочий лист пуст. за исключением манипуляции с одиночными ячейками с использованием свойства Value2.импорт файлов txt с использованием excel interop в C# (QueryTables.Add)

Я уже использую макрос для записи используемого объекта.

Можете ли вы мне помочь (я использую vs2008, C#, excel 2003 и 2007, обе показаны пустой ячейкой).

Ниже мой код; за вашу помощь

 Application application = new ApplicationClass(); 
     try 
     { 
      object misValue = Missing.Value; 

      wbDoc = application.Workbooks.Open(flnmDoc, misValue, misValue, misValue, misValue, misValue, misValue, 
               misValue, misValue, misValue, misValue, misValue, misValue, misValue, 
               misValue); 

      wsRefDocBudgetOwner = (Worksheet)wbDoc.Worksheets[2]; 


      Range lRange = wsRefDocBudgetOwner.get_Range("B2", "B25"); 
      var temp2 = wsRefDocBudgetOwner.QueryTables; 
      var temp = temp2.Add(@"TEXT;d:\temp\config ssas.txt", lRange, Type.Missing); 
      //temp.RefreshStyle = XlCellInsertionMode.xlInsertDeleteCells; 
      //temp.RefreshOnFileOpen = true; 

      wsRefDocBudgetOwner.get_Range("B1", "B1").Value2 = "Lgfdgast adsffdafadfads"; 

      wbDoc.Save(); 
      //wbDoc.SaveAs(flnmDoc2, misValue, misValue, misValue, misValue, misValue, XlSaveAsAccessMode.xlExclusive, 
       //   misValue, misValue, misValue, misValue, misValue); 
      wbDoc.Close(Missing.Value, Missing.Value, Missing.Value); 
     } 
     finally 
     { 

      application.Quit(); 
     } 

ответ

0

Я нашел его;

это свойство RefreshStyle. Он должен быть установлен в xlInsertEntierRows.

temp.RefreshStyle = XlCellInsertionMode.xlInsertEntireRows;

, как показано на странице http://support.microsoft.com/kb/306023