Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在C语言中以编程方式选择多个工作表并同时复制到同一工作簿#_C#_Excel_Excel Interop - Fatal编程技术网

C# 如何在C语言中以编程方式选择多个工作表并同时复制到同一工作簿#

C# 如何在C语言中以编程方式选择多个工作表并同时复制到同一工作簿#,c#,excel,excel-interop,C#,Excel,Excel Interop,我在寻求一些建议 很抱歉,我不知道如何在文本中澄清,因此,我将向您展示我需要通过Excel实现的功能 按住Ctrl键并单击鼠标左键选择多张图纸(以激活图纸1、图纸2) 右键单击>移动或复制…>选择(移到末尾)>选中“创建副本”>确定 结果 我想知道两件事 如何选择多张图纸 如何在一次快照中将选定的工作表复制到同一工作簿 之所以要在1个快照中复制这两个,是因为我将公式放在单元格A1的Sheet1中,即“=Sheet2!A1”。如果我一个接一个地复制,公式不会改变,但如果我同时选择两张纸并复制

我在寻求一些建议

很抱歉,我不知道如何在文本中澄清,因此,我将向您展示我需要通过Excel实现的功能

  • 按住Ctrl键并单击鼠标左键选择多张图纸(以激活图纸1、图纸2)
  • 右键单击>移动或复制…>选择(移到末尾)>选中“创建副本”>确定
  • 结果
  • 我想知道两件事

  • 如何选择多张图纸
  • 如何在一次快照中将选定的工作表复制到同一工作簿

  • 之所以要在1个快照中复制这两个,是因为我将公式放在单元格A1的Sheet1中,即“=Sheet2!A1”。如果我一个接一个地复制,公式不会改变,但如果我同时选择两张纸并复制,公式会自动更改为“=Sheet2(2)!A1”我想这就是您需要的:

                var MyApp = new Excel.Application();
                MyApp.Visible = false;
                var MyBook = MyApp.Workbooks.Open(path);
    
                Excel.Worksheet sheet = (Excel.Worksheet)MyBook.Sheets[1];
                sheet.Copy(MyBook.Sheets[MyBook.Sheets.Count]);
    
                sheet = (Excel.Worksheet)MyBook.Sheets[2];
                sheet.Copy(MyBook.Sheets[MyBook.Sheets.Count]);
    
                MyBook.Save();
    

    很抱歉,我的问题不够清楚。之所以要在1个快照中复制这两个,是因为我将公式放在单元格A1的Sheet1中,即“=Sheet2!A1”。如果我将其逐1复制,则公式不会更改,但如果我同时选择两张图纸并进行复制,则公式将自动更改为“=Sheet2(2)!A1”。这就是我想归档的内容。