Foros del Web » Programación para mayores de 30 ;) » .NET »

copiar hoja de un excel a otro excel

Estas en el tema de copiar hoja de un excel a otro excel en el foro de .NET en Foros del Web. Hola, lo que estoy tratando de hacer es un código donde pueda agregar una hoja (al final de las existentes) desde un excel que contiene ...
  #1 (permalink)  
Antiguo 31/03/2015, 12:08
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
copiar hoja de un excel a otro excel

Hola, lo que estoy tratando de hacer es un código donde pueda agregar una hoja (al final de las existentes) desde un excel que contiene algo asi como una plantilla. Esto es lo que tengo hasta ahora:

Dim oExcel As Microsoft.Office.Interop.Excel.Application

Dim Obook As Microsoft.Office.Interop.Excel.Workbook, _
Obook2 As Microsoft.Office.Interop.Excel.Workbook, _
Osheet As Microsoft.Office.Interop.Excel.Worksheet, _
Osheet2 As Microsoft.Office.Interop.Excel.Worksheet

oExcel = New Microsoft.Office.Interop.Excel.Application()
oExcel.SheetsInNewWorkbook = 1
oExcel.DisplayAlerts = False
oExcel.Visible = False

Obook = oExcel.Workbooks.Open("C:\MG\CreaExcel\prueba.xls" )
Osheet = Obook.Sheets("Sheet1")

Obook2 = oExcel.Workbooks.Open("C:\MG\CreaExcel\p.xls")
Osheet2 = Obook2.Sheets("January")

Osheet2.Range("A1", "C6").Value = Osheet.Range("A1", "C6").Value

Obook2.Save()

Obook.Close()
Obook2.Close()

oExcel.Quit()


me envia un error en la linea
oExcel.SheetsInNewWorkbook = 1
__________________
Dios es mas grande que tu problema :-)
  #2 (permalink)  
Antiguo 31/03/2015, 18:46
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: copiar hoja de un excel a otro excel

hola, he modificado el codigo. ahora entiendo que el problema es una librería o alguna referencia que no he cargado.

Código:
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim oExcel As Microsoft.Office.Interop.Excel.Application

        Dim Obook As Microsoft.Office.Interop.Excel.Workbook, _
            Obook2 As Microsoft.Office.Interop.Excel.Workbook, _
            Osheet As Microsoft.Office.Interop.Excel.Worksheet, _
            Osheet2 As Microsoft.Office.Interop.Excel.Worksheet
        Try
            oExcel = New Microsoft.Office.Interop.Excel.Application()
            oExcel.SheetsInNewWorkbook = 1
            oExcel.DisplayAlerts = False
            oExcel.Visible = False

            Obook = oExcel.Workbooks.Open("C:\MG\CreaExcel\prueba.xls")
            Osheet = Obook.Sheets("Sheet1")

            Obook2 = oExcel.Workbooks.Open("C:\MG\CreaExcel\p.xls")
            Osheet2 = Obook2.Sheets("January")

            Osheet2.Range("A1", "C6").Value = Osheet.Range("A1", "C6").Value

            Obook2.Save()

            Obook.Close()
            Obook2.Close()

            oExcel.Quit()
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try


    End Sub
al depurar me indica el error: Old format or invalid type library apuntando a a la linea
oExcel.SheetsInNewWorkbook = 1


Bueno, gracias por sus respiuestas. Saludos.
__________________
Dios es mas grande que tu problema :-)
  #3 (permalink)  
Antiguo 02/04/2015, 07:28
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
Información Respuesta: copiar hoja de un excel a otro excel

Finalmente me bajé el Visual Studio 2013 en su versión estudiante, volví a cargar las referencias y mágicamente funcionó. Tengo la teoría entonces que estaba trabajando con un Visual Studio mas antiguo que el que soporta el SO del PC.

Saludos y gracias
Mauricio

__________________
Dios es mas grande que tu problema :-)

Etiquetas: net
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:08.