Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > .NET
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-07-2012
franfl franfl is offline
Miembro
 
Registrado: feb 2008
Posts: 88
Poder: 17
franfl Va por buen camino
Abrir excel desde VB

Buenas, llevo atascado unos días en este problemilla. Desde un botón que tengo abro un excel, y obtengo el valor de una celda en concreto y la voy guardando en una variable para después mostrarlo en mi pantalla. Consigo traer ese valor pero me sale la siguiente excepción "Excepción de HRESULT: 0X800A01A8", y no consigo quitarla. Creo que el problema puede venir porque al final aunque el while (objExcel.Visible) se cumple intento acceder a una celda que ya no existe, no se si me explico bien.... A ver si alguien me puede ayudar porque no se me ocurre mas pruebas que hacer. Muchisimas gracias
Código:
Dim aux As String
        Dim objExcel As Excel.Application
        Dim xLibro As Excel.Workbook
        Dim xHoja As Excel.Worksheet
        Dim xRango As Excel.Range

        objExcel = New Excel.Application
        xLibro = objExcel.Workbooks.Open("Z:\GESTION\COPIAS DE EXPEDIENTE\TABAL CALCULO Nº documentos copias expediente.xls")
        xHoja = xLibro.Worksheets(1)
        xRango = xHoja.Range("E18")
        objExcel.Visible = True

        While (objExcel.Visible)
            Me.Enabled = False
            Try
                If xRango.Value <> Nothing Then
                    aux = xRango.Value.ToString
                End If
            Catch exc As Exception
                'MessageBox.Show(exc.Message)
            End Try
        End While

        'xRango.ClearContents()
        objExcel.Quit()

Última edición por Casimiro Notevi fecha: 23-07-2012 a las 15:52:32.
Responder Con Cita
  #2  
Antiguo 24-07-2012
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Lo siento, franfi, pero por aquí VB no se estila mucho. Si fuera QuickBASIC aún podría ayudarte yo, pero de VB no tengo NPI.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 24-07-2012
franfl franfl is offline
Miembro
 
Registrado: feb 2008
Posts: 88
Poder: 17
franfl Va por buen camino
Muchas gracias Nuño, a ver si encuentro alguna "chapuzilla" para solucionarlo.
Responder Con Cita
  #4  
Antiguo 25-07-2012
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Poder: 18
mightydragonlor Va por buen camino
Hola no entiendo cual es la necesidad clara que tienes, pero si lo que quieres es leer un archivo de excel y lo que te está generando error es esto:
Código:
                If xRango.Value <> Nothing Then
                    aux = xRango.Value.ToString
                End If
lo puedes solucionar con:
Código:
           If Not xRango Is Nothing Then
                If xRango.Value <> Nothing Then
                    aux = xRango.Value.ToString
                End If
           End If
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita
  #5  
Antiguo 25-07-2012
franfl franfl is offline
Miembro
 
Registrado: feb 2008
Posts: 88
Poder: 17
franfl Va por buen camino
Muchas gracias pero me sigue saltando la excepción, es que es difícil explicar el porque hago ese trozo de código, entiendo que las últimas iteracciones del while el excel sigue siendo visible pero la celda, la hoja o el libro ya no existen y por eso me salta el error. La verdad que no soy capaz de soluccionarlo y he probado mil cosas, así que capturo la excepción y no hago nada con ella porque por lo menos el valor de la celda me lo devuelve correctamente asi q.... una pequeña chapuzilla. Muchisisimas gracias
Responder Con Cita
  #6  
Antiguo 25-07-2012
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Poder: 18
mightydragonlor Va por buen camino
Otra cosa que puedes hacer es convertir el xls a csv y cargarlo a un datatable, yo hice un programa que se encarga de convertir de excel 97-2003 a csv, de esta manera el error se deja de generar.
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Abrir XLS sin Excel Instalado MarioATamborini Servers 3 15-11-2011 20:57:08
Abrir un archivo de texto con excel Pitilingorri Varios 4 27-09-2011 12:24:04
Abrir archivo excel desde ruta Jeko Varios 4 28-03-2011 10:50:20
Abrir un Excel desde Delphi 6 y modificarlo Aser Varios 4 05-08-2008 14:37:32
Abrir un fichero especifico Excel Alexis7788 Servers 1 21-02-2007 11:55:35


La franja horaria es GMT +2. Ahora son las 12:59:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi