Como copiar planilhas programaticamente
Você pode criar uma cópia de uma planilha e inserir essa planilha antes ou depois de uma planilha existente na pasta de trabalho.Se você não especificar onde inserir a planilha, o Excel cria uma nova pasta de trabalho para conter a nova planilha.
Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de nível de aplicativo para Excel 2013 e Excel 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.
Observação |
---|
Se você copia programaticamente a planilha ou o usuário final copia a planilha manualmente, não há nenhum code-behind a nova planilha e controles na nova planilha não funcionam.Isso ocorre porque a planilha recém-copiado é um Microsoft.Office.Interop.Excel.Worksheet objeto e não um Microsoft.Office.Tools.Excel.Worksheet item de host.Controles Windows Forms e controles de host só podem ser adicionados aos itens de host.Para obter mais informações, consulte Limitações de programação de itens de Host e controles de Host. |
Para adicionar uma planilha copiada para uma pasta de trabalho uma personalização de nível de documento
Use o Copy método para copiar a primeira planilha na pasta de trabalho atual e colocar a cópia após a terceira folha.
Globals.Sheet1.Copy(After:=Globals.ThisWorkbook.Sheets(3))
Globals.Sheet1.Copy(Globals.ThisWorkbook.Sheets[3]);
Para adicionar uma planilha copiada para uma pasta de trabalho em um suplemento em nível de aplicativo
Use o Copy método para copiar a primeira planilha na pasta de trabalho atual e colocar a cópia após a terceira folha.
Dim worksheet1 As Excel.Worksheet = CType(Application.ActiveWorkbook.Worksheets(1), _ Excel.Worksheet) Dim worksheet3 As Excel.Worksheet = CType(Application.ActiveWorkbook.Worksheets(3), _ Excel.Worksheet) worksheet1.Copy(After:=worksheet3)
Excel.Worksheet worksheet1 = ((Excel.Worksheet)Application.ActiveWorkbook.Worksheets[1]); Excel.Worksheet worksheet3 = ((Excel.Worksheet)Application.ActiveWorkbook.Worksheets[3]); worksheet1.Copy(worksheet3);
Consulte também
Tarefas
Como adicionar novas planilhas a pastas de trabalho programaticamente
Como excluir planilhas de pastas de trabalho programaticamente
Como selecionar planilhas programaticamente
Conceitos
Itens de host e visão geral sobre controles de Host
Automatizar o Excel usando o Extended objetos
Acesso global a objetos em projetos do Office
Limitações de programação de itens de Host e controles de Host