2017-07-20 4 views
0

Ich möchte eine Spalte hinzufügen, die bereits Zellenwerte zwischen zwei Spalten (oder am Ende) eines Arbeitsblatts einer vorhandenen Arbeitsmappe enthält, die ich lade.So fügen Sie eine neue Excel-Spalte zwischen zwei Spalten in einem vorhandenen Arbeitsblatt hinzu

So habe ich eine Funktion, die Sets, die „Spaltenwerte“ Ich brauche:

private static Workbook SetIndicatorsWorkbook() 
     { 
      var workbook = new Workbook(WorkbookFormat.Excel2007MacroEnabled); 
      var worksheet = workbook.Worksheets.Add("Unit & Integration Tests"); 

//Don't worry about team and jenkinsBuilTeams variables 
     foreach (var team in jenkinsBuildTeams) 
     { 

      worksheet.Rows[posX].Cells[0].Value = lastnbUnitTests + lastnbIntegrationTests; 
      posX += 1; 
     } 

     return workbook; 
    } 

Und dann in Hauptfunktion möchte ich diese Spalte hinzufügen in einer geladenen Arbeitsmappe (die workbook.worksheets[0].Columns[0] ist):

private static void Main() 
      { 
       //The workbook I need to update 
       Workbook workbook = Workbook.Load("file.xlsx"); 
       Workbook temp = SetIndicatorsWorkbook(); 
       WorksheetColumn wc = temp.Worksheets[0].Columns[0]; 

       //The issue is that Worksheet's Columns collection has no "Insert" property 

       workbook.Save("file.xlsx");   
      } 
+0

@noas Ich verwende nicht Excel Interop aber Infragistics.Documents.Excel – raihane

Antwort

2

die Columns Sammlung des Arbeitsblatt eine Insert Methode hat, die Daten verschieben/Formatierung ju st wie es in Excel passieren würde. Dies wurde in der Volume 2 Version 2014 hinzugefügt. Sie können mehr darüber in der help topic oder api documentation lesen. Hinweis: Ich habe mit der WPF-Versionshilfe verknüpft, aber die Insert-Methode ist auch auf den anderen Plattformen verfügbar.

Verwandte Themen