Recortar e colar colunas no intervalo do Excel com c #

Estou tentando mover a coluna B na frente da coluna Q em uma planilha do Excel como parte de um relatório no qual estou trabalhando. Eu tenho experiência em VBA, mas relativamente pouco em c # então eu passei a última hora no Google e não consigo encontrar uma solução, eu sinto que isso deve ser simples, mas eu não consigo entender.

Método um, o que resulta em uma mensagem “Inserir método da classe Range falhou”.

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));

O método dois resulta em uma mensagem “Não é possível obter uma propriedade de corte da classe Range”.

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));

No segundo método, quando omito o CopyOrigin, recebo a msg, mas ela insere uma coluna em branco na frente da coluna Q.

No VBA, usaria o seguinte:

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

Mas como eu disse, minha experiência c # é limitada no momento, então não tenho idéia de como traduzi-la para c #

questionAnswers(1)

yourAnswerToTheQuestion