Spalten in Excel-Bereich ausschneiden und einfügen mit c #

Ich versuche, Spalte B in einem Excel-Arbeitsblatt als Teil eines Berichts, an dem ich arbeite, vor Spalte Q zu verschieben. Ich habe Erfahrung in VBA, aber relativ wenig Erfahrung in C #. Daher habe ich die letzte Stunde bei Google verbracht und kann keine Lösung finden. Ich denke, dies sollte einfach sein, aber ich kann es nicht ganz verstehen.

Methode eins, die zu einer Meldung führt, dass das Einfügen einer Methode der Range-Klasse fehlgeschlagen ist.

Excel.Range rngCut1 = JobLabourSheet.get_Range("B:B", Type.Missing);
Excel.Range rngPaste1 = JobLabourSheet.get_Range("Q:Q", Type.Missing);
            rngCut1.Columns.Cut(rngPaste1.EntireColumn.Insert(Excel.XlInsertShiftDirection.xlShiftToRight, rngCut1));

Methode zwei führt zu einer Meldung "Kann eine Cut-Eigenschaft der Range-Klasse nicht abrufen".

Excel.Range rngCut1 = JobLabourSheet.get_Range("B:B", Type.Missing);
Excel.Range rngPaste1 = JobLabourSheet.get_Range("Q:Q", Type.Missing);
            rngCut1.Columns.Cut(rngPaste1.EntireColumn.Insert(Excel.XlInsertShiftDirection.xlShiftToRight, Missing.Value));

Wenn ich bei der zweiten Methode die CopyOrigin weglasse, erhalte ich die Meldung, füge aber eine leere Spalte vor der Spalte Q ein.

In VBA würde ich Folgendes verwenden:

Columns("B:B").Cut
Columns("Q:Q").Insert Shift:=xlToRight

Aber wie gesagt, meine C # -Erfahrung ist im Moment begrenzt, sodass ich keine Ahnung habe, wie ich es in C # übersetzen soll.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage