none
excel referencia vb.net RRS feed

  • Pregunta

  • hola

    queria saber si en mi pc tengo instalado el excel 2007 y hago referencia el dll al proyecto.

    A la hora de instalar el programa en la maquina cliente que tiene instalado el excel 2003 habra problemas?

    y si hay problema como se puede solucionar?

     

    lunes, 24 de octubre de 2011 7:49

Respuestas

  • "10Gox" preguntó:

    > queria saber si en mi pc tengo instalado el excel 2007
    > y hago referencia el dll al proyecto.
    >
    > A la hora de instalar el programa en la maquina cliente
    > que tiene instalado el excel 2003 habra problemas?

    La cuestión es bien fácil. La versión de la biblioteca de objetos de Excel que referencies en tu proyecto de Visual Basic, tendrá que estar instalada en todos aquellos PCs clientes que utilicen tu aplicación.

    Si tú referencias la versión de Excel 2007, todos los PCs tienen que tener instalado Excel 2007. ¿Que referencias la versión de Excel 2003? Todos los PCs tienen que tener instalado Excel 2003.

    > y si hay problema como se puede solucionar?

    Instalando en los PCs clientes la misma versión de Excel que has referenciado en tu proyecto de Visual Basic.  ¡Así de fácil! :-)

    Si no quieres depender de la versión de Excel que se encuentre instalada en los equipos clientes, no referencies en tu proyecto ninguna versión de la biblioteca de Excel, y hazlo en tiempo de ejecución mediante las clases del espacio de nombres System.Reflection.

    Esto significa que tienes que dominar bastante bien las propiedades y métodos de los distintos objetos de Excel, ya que vas a tener que trabajar con tipos de datos 'Object', porque al no tener referenciada la biblioteca de Excel, no vas a poder utilizar objetos del tipo Excel.Application, Excel.Range, etc., al igual que también vas a perder la característica IntelliSense en tu proyecto.

    Por supuesto, si vas a trabajar con Reflection, asegúrate de utilizar métodos y propiedades de los objetos de Excel que se encuentren disponibles en todas las versiones de Excel. Con esto te quiero decir, que no vayas a utilizar una nueva característica de Excel 2010, porque lo más seguro es que no se encuentre disponible en versiones anteriores.

    Un saludo


    NOTA: si esta respuesta te ha resultado útil, recuerda marcarla como satisfactoria.

    Enrique Martínez
      [MS MVP - VB]

    Si usas Visual Basic .NET y deseas ser productivo y feliz, activa la instrucción Option Strict.

    lunes, 24 de octubre de 2011 15:19
    Moderador
  • en la maquina cliente que tiene instalado el excel 2003 habra problemas?

    seguramente tendras problemas, se que la compatibilidad hacia adelante tendria menos inconvenientes

    o sea desarrolla referenciando las dll de excel 2003, pera luego si en la pc del usuario tienes 2003 o 2007, deberia funcionar

    igual como todo lo que hagas en COM, realiza pruebas para asegurarte, realiza una prueba pequeña para validar que esto aplica

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 24 de octubre de 2011 12:33

Todas las respuestas

  • en la maquina cliente que tiene instalado el excel 2003 habra problemas?

    seguramente tendras problemas, se que la compatibilidad hacia adelante tendria menos inconvenientes

    o sea desarrolla referenciando las dll de excel 2003, pera luego si en la pc del usuario tienes 2003 o 2007, deberia funcionar

    igual como todo lo que hagas en COM, realiza pruebas para asegurarte, realiza una prueba pequeña para validar que esto aplica

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 24 de octubre de 2011 12:33
  • "10Gox" preguntó:

    > queria saber si en mi pc tengo instalado el excel 2007
    > y hago referencia el dll al proyecto.
    >
    > A la hora de instalar el programa en la maquina cliente
    > que tiene instalado el excel 2003 habra problemas?

    La cuestión es bien fácil. La versión de la biblioteca de objetos de Excel que referencies en tu proyecto de Visual Basic, tendrá que estar instalada en todos aquellos PCs clientes que utilicen tu aplicación.

    Si tú referencias la versión de Excel 2007, todos los PCs tienen que tener instalado Excel 2007. ¿Que referencias la versión de Excel 2003? Todos los PCs tienen que tener instalado Excel 2003.

    > y si hay problema como se puede solucionar?

    Instalando en los PCs clientes la misma versión de Excel que has referenciado en tu proyecto de Visual Basic.  ¡Así de fácil! :-)

    Si no quieres depender de la versión de Excel que se encuentre instalada en los equipos clientes, no referencies en tu proyecto ninguna versión de la biblioteca de Excel, y hazlo en tiempo de ejecución mediante las clases del espacio de nombres System.Reflection.

    Esto significa que tienes que dominar bastante bien las propiedades y métodos de los distintos objetos de Excel, ya que vas a tener que trabajar con tipos de datos 'Object', porque al no tener referenciada la biblioteca de Excel, no vas a poder utilizar objetos del tipo Excel.Application, Excel.Range, etc., al igual que también vas a perder la característica IntelliSense en tu proyecto.

    Por supuesto, si vas a trabajar con Reflection, asegúrate de utilizar métodos y propiedades de los objetos de Excel que se encuentren disponibles en todas las versiones de Excel. Con esto te quiero decir, que no vayas a utilizar una nueva característica de Excel 2010, porque lo más seguro es que no se encuentre disponible en versiones anteriores.

    Un saludo


    NOTA: si esta respuesta te ha resultado útil, recuerda marcarla como satisfactoria.

    Enrique Martínez
      [MS MVP - VB]

    Si usas Visual Basic .NET y deseas ser productivo y feliz, activa la instrucción Option Strict.

    lunes, 24 de octubre de 2011 15:19
    Moderador