Visual Basic - Crear nuevo archivo excel VB10

Life is soft - evento anual de software empresarial
 
Vista:
Imágen de perfil de Dante

Crear nuevo archivo excel VB10

Publicado por Dante (3 intervenciones) el 01/03/2017 06:10:08
Hola qué tal, el motivo de mi mensaje es dudas sobre la creación de un programa que me modifique un excel que tengo como plantilla y me lo guarde con algún nombre que escriba en un textbox, sin afectar el archivo excel de origen, todo esto sin abrir los excel. espero y me puedan orientar, ya que soy nuevo en esto y tengo muchas dudas, gracias... Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear nuevo archivo excel VB10

Publicado por Andres Leonardo (1798 intervenciones) el 01/03/2017 14:37:54
si tendrias que abrirlo .. lo que no deberias es mostrarlo y luego guardarlo como..... para que no te afecte la plantilla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Eduardo

Crear nuevo archivo excel VB10

Publicado por Eduardo (8 intervenciones) el 03/03/2017 19:25:30
Que tal,

No soy experto pero he hecho algunos programas con excel. Intenta primero agregar la referencia de Excel en el proyecto (Menu Proyecto, agregar referencia, microsoft excel). Y en el encabezado del programa agregas

1
Imports excel = Microsoft.Office.Interop.Excel

en el cuerpo del programa agregas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Public obj_Excel As excel.Application
Public obj_Libros As excel.Workbooks
Public obj_Hoja As excel.Worksheet
Public Archivo_Plantilla As String = "AQUI PONES LA RUTA DE LA PLANTILLA"
 
'Esto yo lo tengo como "Public" porque yo lo mando llamar hacia otras paginas del programa, pero tu lo puedes usar local como  "Dim"
 
'El cuerpo del programa debe quedar algo como esto, que abre la plantilla pero no la muestra, se queda abierta en segundo planto:
 
 
Public Sub Abrir_Archivo()
 
        Try
            'intenta abrir el  archivo
            obj_Excel = CreateObject("Excel.Application")
            With obj_Excel
                .Workbooks.Open(Archivo_Plantilla)
                obj_Hoja = .ActiveWorkbook.Sheets("AQUI VA EL NOMBRE DE LA HOJA DE EXCEL")
                obj_Hoja_Gastos.Activate()
                .Visible = False
            End With
        Catch ex As Exception
            'si no puede abrir manda un msj de texto
            MsgBox("No fue posible abrir el archivo " & Archivo_Plantilla, vbCritical, "Imposible Abrir Archivo")
 
        End Try
    End Sub
 
 
 
'Para guardar las modificaciones sin afectar a la plantilla:
 
 
   Sub Cerrar_Excel()
        Try
 
            With obj_Excel
 
                    .ActiveWorkbook.SaveAs("AQUÍ PONES LA RUTA DE DONDE SE GUARDARA EL ARCHIVO NUEVO")
                    .ActiveWorkbook.Close()
                    .Quit()
                    End With
 
        Catch ex As Exception
            MsgBox("EL ARCHIVO NO ESTA ACTIVO O YA SE HA CERRADO", vbInformation, "ERROR AL CERRAR EXCEL")
        End Try
    End Sub


Espero que te sea de utilidad.

Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar