用Excel复制/粘贴Excel中的单元格

如何selectExcel文件中的特定用户范围并复制这些单元格并插入复制的单元格Shift:=xlDown使用C#的Shift:=xlDown

这是我需要转换成C#的VBA代码:

 Range("A9:L9").Select Selection.Copy Rows("10:10").Select Selection.Insert Shift:=xlDown Range("F10").Select 

我不知道如何将这个代码转换成C#代码来运行。

如果你还没有尝试过,那么你可以试试这个

VS添加对您项目的引用: Microsoft.Office.Interop.Excel

 using Excel = Microsoft.Office.Interop.Excel; class Program { static void Main(string[] args) { var excelapp = new Excel.Application(); excelapp.Workbooks.Add(); string path = "Your Excel Path"; Excel.Workbook workbook = excelapp.Workbooks.Open(path); Excel.Worksheet workSheet = workbook.Worksheets.get_Item(1); Excel.Range source = workSheet.Range["A9:L9"].Insert(Excel.XlInsertShiftDirection.xlShiftDown); Excel.Range dest = workSheet.Range["F10"]; source.Copy(dest); } } 
 Excel.Application excelapp = new Excel.Application(); excelapp.Workbooks.Add(); string path = @"Z:\Excel operation\TestExcel\hi.xlsx"; Excel.Workbook workbook = excelapp.Workbooks.Open(path); Excel.Worksheet workSheet = workbook.Worksheets.get_Item(1); workSheet.Range["A9:L9"].Copy(workSheet.Range["A10:L10"]); workSheet.Range["A10:L10"].Insert(Excel.XlInsertShiftDirection.xlShiftDown); excelapp.Visible = true; var source = workSheet.Range["A9:L9"].Insert(Excel.XlInsertShiftDirection.xlShiftDown); Excel.Range dest = workSheet.Range["A10:L10"]; workSheet.Range["A9:L9"].Copy(dest); excelapp.ActiveWorkbook.Save(); excelapp.Visible = true;