Linea de Comandos

07/12/2004 - 23:07 por Carlos Durán Urenda | Informe spam
Hola al grupo

Necesito conocer las opciones de la linea de comandos de Excel,
especificamente lo que necesito es poder indicar en dicha linea es... el
nombre de archivo que deseo abrir, que lo abra como solo lectura y que se
salte la verificacion de las macros

Gracias

Carlos Durán

Preguntas similare

Leer las respuestas

#6 Carlos Durán Urenda
09/12/2004 - 22:59 | Informe spam
Gracias Manuel

Estoy programando una aplicacion en Visual Basic .Net, esta aplicacion se
distribuirá en las sucursales de la empresa...
el problema de la version no es por que este realizando una accion muy
especifica, si no por que si al programar establesco la referencia para la
version 10.00 (xp), que es la que tengo instalada en mi equipo, el programa
marca error al tratar de ejecutarse en una maquina con una version diferente
de excel, ese es mi problema con las versiones, la verdad no se si alguna
vez intentaste hacer esto, es bastante traumante ya que por alguna razon al
establecer la referencia tanto en diseño como dinamicamente, me sucede que
el proceso de Excel se queda cargado en la memoria, y hasta lo que he podido
ver, hay un buen debate a cerca de como matar ese proceso, eso aunado a que
cada que se crea el objeto de Excel, se crea una instancia del programa, es
un poco molesto tener cada archivo en una ventana de programa
independiente... en fin, me he topado con una serie de probleamas que no
esperaba encontrar.

Por otro lado, puedo llamar al libro desde la funcion Shell, dejando que
Windows sea el encargado de abrir el programa adecuado para manejar el
archivo, en este caso Excel, mi problea es que estoy resumiendo los datos y
necesito ajustar el rango de la tabla dinamica debido a que cada vez se
abrirá con datos diferentes, tambien necesito ajustar el alto de algunas
filas para que se visualice toda la informacion, y no me agrada el mensaje
al iniciar el archivo con macros, eso es todo :-(


Agradezco tu coperación, y si tienes alguna idea mas al respecto me podria
dar mas luz en este tema


Saludos
Carlos Durán




"Manuel Romero" @hotmail.com> escribió en el mensaje
news:
Otra cosa, no conozco los modelos de objeto de excel xp o 2003, pero que
necesitas hacer tan especifico como para que te importe cual version de
Excel es?

Ademas, si las macros las guardas en el libro y alguien quiere llevarse
una
copia del reporte, se llevara las macros con el. Y eso puede ser, aparte
de
quizas no conveniente para ti, incomodo para el usuario cuando cada vez
que
quiera ver su reporte y se le pregunte si quiere activar las macros.

"Manuel Romero" @hotmail.com> escribió en el mensaje
news:%
Perdona mi intromision, pero estoy 100% de acuerdo con Hector,


sencillamente
programa para excel 2000 (segun dices) que eso lo hace compatible hacia
arriba. Personalmente te recomiendo las opciones 1 o 2 de las que


mencionas.

La diferencia entre la opcion 1 y 2 es unicamente el tipo de enlaces. En


la
primera son en tiempo de diseño y en la segunda en tiempo de ejecución,


pero
la funcionalidad es exactamente la misma. La facilidad o dificultad es


solo
para programar porque no tendras la ayuda de Intellisense en el segundo
caso.


"Carlos Durán Urenda" escribió en el mensaje
news:
> Gracias Hector
>
> Mi situacion es la siguiente
>
> Estoy programando en VB.Net y necesito crear reportes en excel, he
> investigado y experimentado con varias alternativas, pero cualquiera de
> ellas presenta sus propios problemas
>
> 1) haciendo referencia a la libreria de Excel, el problema de poner una
> referencia especifica en mi aplicacion, es que depende 100% de la


version
> que tengo instalado en mi equipo, en este caso la aplicacion que estoy
> desarrollando debera ejecutarse en diferentes maquinas con diferentes
> versiones de Excel (2000, 2002 (xp) y 2003), y apesar de que me permite
> controlar eficientemente el excel, depende mucho de la version
>
> 2) puedo establecer la referencia dinamicamente con la fucion
CreateObject,
> el problema es que no me brinada tanto control como la primera, y
> aunque
me
> han dicho que da cierta independencia de la version, esto en la
> practica
no
> es totalmente cierto, ademas de otros problemas que implica crear
> dinamicamente el objeto
>
> 3) la ultima alternativa es copiar los datos a Excel por medio de


ADO.Net,
> lo cual me permite escribir directamente sobre el libro de excel como
> si
> fuera una base de datos, y posteriormente abrirlo por medio de la


funcion
> Shell, lo que me brindaría 100% de independencia de la version de
> Excel,
> pero el reporte que estoy generando contiene una tabla dinamica, cuyo
rango
> deseo actualizar al abrir el libro, tambien deseo ajustar el texto de
> ciertas celdas para que quede lista para imprimirse directamente,
> debido


a
> que por medio del Shell ya no puedo controlar desde mi aplicacion el


libro
> abierto, pienso incluir una macro que al iniciar el libro ajuste todos


los
> campos de la tabla dinamica, lo unico que no deseo es que aparezca la
> pregunta sobre el nivel de seguridad de excel, especificamente para


dicho
> libro, creo en alguna ocacion haber escuchado algo sobre que se pueden
> firmar las macros como confiables de forma que no pregunte al iniciar,
pero
> no recuerdo en donde escuche eso, tu sabes si es cierto?
>
>
> Gracias
>
>
> "Héctor Miguel" escribió en el mensaje
> news:
> > hola, Carlos !
> >
> >> ... conocer las opciones de la linea de comandos de Excel
> >> ... indicar ... el nombre de archivo que deseo abrir
> >> ... que lo abra como solo lectura
> >> ... y que se salte la verificacion de las macros
> >
> > existen varias formas de abrir archivos 'conjuntamente' con la
aplicacion
> > [p.e.]...
> > - 'ponerlos' en el directorio 'XLStart'
> > - 'ponerlos' en el directorio de inicio 'alternativo'
> > - 'agregarlos' a la linea de comando que 'ejecuta' a la aplicacion
[entre
> > comillas dobles]
> > para 'hacerlos' de solo lectura [p.e.]...
> > - usar dicha opcion al momento de guardarlo [recomendar solo lectura]
> > - [si la agregas a la linea de comandos]... anteponer '/R' [entre la
> > aplicacion Y el archivo que se abrira]
> > para que 'se brinque' la advertencia de macros [p.e.]...
> > - 'bajar' el nivel de proteccion [lo cual es opcion DE CADA USUARIO


Y...
> > NO RECOMENDABLE]
> > - abrirlos 'desde' OTRO libro que YA tiene 'permiso' de usar macros
> > - 'firmarlos' [ya sea con la herramienta 'SelfCert' o comprando una
firma
> > digital]
> > - 'hacerlos' archivo de complemento [.XLA .XLL .COM etc.]
> >
> > son solo algunos ejemplos 'combinables' a tu eleccion
> > toma nota de que [de cualquier manera] 'tendrias que' hacer lo
conducente
> > EN CADA PC [donde lo 'requieras']
> >
> > si quieres hacerlo 'de un solo paso'... podrias modificar ->el
registro<-
> > [desde el editor de registros de windows]
> > agregando una clave alfanumerica a las opciones de apertura de la
> > aplicacion [p.e.]
> > ejecuta la herramienta RegEdit.exe y 'encuentra' la entrada de la
> > aplicacion...=>segun tu version de excel<>> > > -> Excel de Office 97...
> > Mi


PC\HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft
> > Excel
> > -> Excel de Office 2000/2002/2003...
> > Mi
> > PC\HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel\Options
> > =>x.0 es el numero de la version<>> > > -> [click-derecho] -> nuevo -> valor alfanumerico
> > -> nombre... = OPEN#
> > =>el signo '#' corresponde al siguiente numero en secuencia [si hay
> > alguno]... si no hay ninguno... tampoco 'va'<>> > > -> modifica el valor 'recien' creado para que se 'lea' +/- como


sigue...
> > /R "C:\Ruta y\Carpetas donde esta\Tu archivo.xls"
> >
> > este ultimo 'procedimiento' NO EVITA que se rastreen las macros por
> > [posibles] virus
> > [a menos que no este instalado algun programa anti-virus]
> > tambien debera quedar EN COMPLETA COMPRENSION que... ES BAJO TU
> > PROPIO
> > RIESGO
> >
> > saludos,
> > hector.
> >
>
>






Respuesta Responder a este mensaje
#7 KL
09/12/2004 - 23:15 | Informe spam
Carlos,

Tengo una idea para ti aunque quizas un poco inesperada. Si puedes expresar
tus dudas/problemas en ingles por q no las depositas en el foro ingles
microsoft.public.excel.programming? Hay muchisimos mas participantes por lo
cual la probabilidad de obtener la respuesta seria mucho mayor y el tiempo
en espera mucho menor, digo yo. Y ademas es un foro especializado en
programacion en Excel y hay muchos "gurus" del VBA.

Mi grano de arena.

Un saludo,
KL

"Carlos Durán Urenda" wrote in message
news:
Gracias Manuel

Estoy programando una aplicacion en Visual Basic .Net, esta aplicacion se
distribuirá en las sucursales de la empresa...
el problema de la version no es por que este realizando una accion muy
especifica, si no por que si al programar establesco la referencia para la
version 10.00 (xp), que es la que tengo instalada en mi equipo, el
programa marca error al tratar de ejecutarse en una maquina con una
version diferente de excel, ese es mi problema con las versiones, la
verdad no se si alguna vez intentaste hacer esto, es bastante traumante ya
que por alguna razon al establecer la referencia tanto en diseño como
dinamicamente, me sucede que el proceso de Excel se queda cargado en la
memoria, y hasta lo que he podido ver, hay un buen debate a cerca de como
matar ese proceso, eso aunado a que cada que se crea el objeto de Excel,
se crea una instancia del programa, es un poco molesto tener cada archivo
en una ventana de programa independiente... en fin, me he topado con una
serie de probleamas que no esperaba encontrar.

Por otro lado, puedo llamar al libro desde la funcion Shell, dejando que
Windows sea el encargado de abrir el programa adecuado para manejar el
archivo, en este caso Excel, mi problea es que estoy resumiendo los datos
y necesito ajustar el rango de la tabla dinamica debido a que cada vez se
abrirá con datos diferentes, tambien necesito ajustar el alto de algunas
filas para que se visualice toda la informacion, y no me agrada el mensaje
al iniciar el archivo con macros, eso es todo :-(


Agradezco tu coperación, y si tienes alguna idea mas al respecto me podria
dar mas luz en este tema


Saludos
Carlos Durán




"Manuel Romero" @hotmail.com> escribió en el mensaje
news:
Otra cosa, no conozco los modelos de objeto de excel xp o 2003, pero que
necesitas hacer tan especifico como para que te importe cual version de
Excel es?

Ademas, si las macros las guardas en el libro y alguien quiere llevarse
una
copia del reporte, se llevara las macros con el. Y eso puede ser, aparte
de
quizas no conveniente para ti, incomodo para el usuario cuando cada vez
que
quiera ver su reporte y se le pregunte si quiere activar las macros.

"Manuel Romero" @hotmail.com> escribió en el mensaje
news:%
Perdona mi intromision, pero estoy 100% de acuerdo con Hector,


sencillamente
programa para excel 2000 (segun dices) que eso lo hace compatible hacia
arriba. Personalmente te recomiendo las opciones 1 o 2 de las que


mencionas.

La diferencia entre la opcion 1 y 2 es unicamente el tipo de enlaces. En


la
primera son en tiempo de diseño y en la segunda en tiempo de ejecución,


pero
la funcionalidad es exactamente la misma. La facilidad o dificultad es


solo
para programar porque no tendras la ayuda de Intellisense en el segundo
caso.


"Carlos Durán Urenda" escribió en el mensaje
news:
> Gracias Hector
>
> Mi situacion es la siguiente
>
> Estoy programando en VB.Net y necesito crear reportes en excel, he
> investigado y experimentado con varias alternativas, pero cualquiera
> de
> ellas presenta sus propios problemas
>
> 1) haciendo referencia a la libreria de Excel, el problema de poner
> una
> referencia especifica en mi aplicacion, es que depende 100% de la


version
> que tengo instalado en mi equipo, en este caso la aplicacion que estoy
> desarrollando debera ejecutarse en diferentes maquinas con diferentes
> versiones de Excel (2000, 2002 (xp) y 2003), y apesar de que me
> permite
> controlar eficientemente el excel, depende mucho de la version
>
> 2) puedo establecer la referencia dinamicamente con la fucion
CreateObject,
> el problema es que no me brinada tanto control como la primera, y
> aunque
me
> han dicho que da cierta independencia de la version, esto en la
> practica
no
> es totalmente cierto, ademas de otros problemas que implica crear
> dinamicamente el objeto
>
> 3) la ultima alternativa es copiar los datos a Excel por medio de


ADO.Net,
> lo cual me permite escribir directamente sobre el libro de excel como
> si
> fuera una base de datos, y posteriormente abrirlo por medio de la


funcion
> Shell, lo que me brindaría 100% de independencia de la version de
> Excel,
> pero el reporte que estoy generando contiene una tabla dinamica, cuyo
rango
> deseo actualizar al abrir el libro, tambien deseo ajustar el texto de
> ciertas celdas para que quede lista para imprimirse directamente,
> debido


a
> que por medio del Shell ya no puedo controlar desde mi aplicacion el


libro
> abierto, pienso incluir una macro que al iniciar el libro ajuste todos


los
> campos de la tabla dinamica, lo unico que no deseo es que aparezca la
> pregunta sobre el nivel de seguridad de excel, especificamente para


dicho
> libro, creo en alguna ocacion haber escuchado algo sobre que se pueden
> firmar las macros como confiables de forma que no pregunte al iniciar,
pero
> no recuerdo en donde escuche eso, tu sabes si es cierto?
>
>
> Gracias
>
>
> "Héctor Miguel" escribió en el mensaje
> news:
> > hola, Carlos !
> >
> >> ... conocer las opciones de la linea de comandos de Excel
> >> ... indicar ... el nombre de archivo que deseo abrir
> >> ... que lo abra como solo lectura
> >> ... y que se salte la verificacion de las macros
> >
> > existen varias formas de abrir archivos 'conjuntamente' con la
aplicacion
> > [p.e.]...
> > - 'ponerlos' en el directorio 'XLStart'
> > - 'ponerlos' en el directorio de inicio 'alternativo'
> > - 'agregarlos' a la linea de comando que 'ejecuta' a la aplicacion
[entre
> > comillas dobles]
> > para 'hacerlos' de solo lectura [p.e.]...
> > - usar dicha opcion al momento de guardarlo [recomendar solo
> > lectura]
> > - [si la agregas a la linea de comandos]... anteponer '/R' [entre la
> > aplicacion Y el archivo que se abrira]
> > para que 'se brinque' la advertencia de macros [p.e.]...
> > - 'bajar' el nivel de proteccion [lo cual es opcion DE CADA USUARIO


Y...
> > NO RECOMENDABLE]
> > - abrirlos 'desde' OTRO libro que YA tiene 'permiso' de usar macros
> > - 'firmarlos' [ya sea con la herramienta 'SelfCert' o comprando una
firma
> > digital]
> > - 'hacerlos' archivo de complemento [.XLA .XLL .COM etc.]
> >
> > son solo algunos ejemplos 'combinables' a tu eleccion
> > toma nota de que [de cualquier manera] 'tendrias que' hacer lo
conducente
> > EN CADA PC [donde lo 'requieras']
> >
> > si quieres hacerlo 'de un solo paso'... podrias modificar ->el
registro<-
> > [desde el editor de registros de windows]
> > agregando una clave alfanumerica a las opciones de apertura de la
> > aplicacion [p.e.]
> > ejecuta la herramienta RegEdit.exe y 'encuentra' la entrada de la
> > aplicacion...=>segun tu version de excel<>>> > > -> Excel de Office 97...
> > Mi


PC\HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft
> > Excel
> > -> Excel de Office 2000/2002/2003...
> > Mi
> > PC\HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel\Options
> > =>x.0 es el numero de la version<>>> > > -> [click-derecho] -> nuevo -> valor alfanumerico
> > -> nombre... = OPEN#
> > =>el signo '#' corresponde al siguiente numero en secuencia [si hay
> > alguno]... si no hay ninguno... tampoco 'va'<>>> > > -> modifica el valor 'recien' creado para que se 'lea' +/- como


sigue...
> > /R "C:\Ruta y\Carpetas donde esta\Tu archivo.xls"
> >
> > este ultimo 'procedimiento' NO EVITA que se rastreen las macros por
> > [posibles] virus
> > [a menos que no este instalado algun programa anti-virus]
> > tambien debera quedar EN COMPLETA COMPRENSION que... ES BAJO TU
> > PROPIO
> > RIESGO
> >
> > saludos,
> > hector.
> >
>
>










Respuesta Responder a este mensaje
#8 Carlos Durán Urenda
09/12/2004 - 23:50 | Informe spam
ok gracias KL

"KL" <lapink2000(at)hotmail.com> escribió en el mensaje
news:
Carlos,

Tengo una idea para ti aunque quizas un poco inesperada. Si puedes
expresar tus dudas/problemas en ingles por q no las depositas en el foro
ingles microsoft.public.excel.programming? Hay muchisimos mas
participantes por lo cual la probabilidad de obtener la respuesta seria
mucho mayor y el tiempo en espera mucho menor, digo yo. Y ademas es un
foro especializado en programacion en Excel y hay muchos "gurus" del VBA.

Mi grano de arena.

Un saludo,
KL

"Carlos Durán Urenda" wrote in message
news:
Gracias Manuel

Estoy programando una aplicacion en Visual Basic .Net, esta aplicacion se
distribuirá en las sucursales de la empresa...
el problema de la version no es por que este realizando una accion muy
especifica, si no por que si al programar establesco la referencia para
la version 10.00 (xp), que es la que tengo instalada en mi equipo, el
programa marca error al tratar de ejecutarse en una maquina con una
version diferente de excel, ese es mi problema con las versiones, la
verdad no se si alguna vez intentaste hacer esto, es bastante traumante
ya que por alguna razon al establecer la referencia tanto en diseño como
dinamicamente, me sucede que el proceso de Excel se queda cargado en la
memoria, y hasta lo que he podido ver, hay un buen debate a cerca de como
matar ese proceso, eso aunado a que cada que se crea el objeto de Excel,
se crea una instancia del programa, es un poco molesto tener cada archivo
en una ventana de programa independiente... en fin, me he topado con una
serie de probleamas que no esperaba encontrar.

Por otro lado, puedo llamar al libro desde la funcion Shell, dejando que
Windows sea el encargado de abrir el programa adecuado para manejar el
archivo, en este caso Excel, mi problea es que estoy resumiendo los datos
y necesito ajustar el rango de la tabla dinamica debido a que cada vez se
abrirá con datos diferentes, tambien necesito ajustar el alto de algunas
filas para que se visualice toda la informacion, y no me agrada el
mensaje al iniciar el archivo con macros, eso es todo :-(


Agradezco tu coperación, y si tienes alguna idea mas al respecto me
podria dar mas luz en este tema


Saludos
Carlos Durán




"Manuel Romero" @hotmail.com> escribió en el mensaje
news:
Otra cosa, no conozco los modelos de objeto de excel xp o 2003, pero
que
necesitas hacer tan especifico como para que te importe cual version de
Excel es?

Ademas, si las macros las guardas en el libro y alguien quiere llevarse
una
copia del reporte, se llevara las macros con el. Y eso puede ser, aparte
de
quizas no conveniente para ti, incomodo para el usuario cuando cada vez
que
quiera ver su reporte y se le pregunte si quiere activar las macros.

"Manuel Romero" @hotmail.com> escribió en el mensaje
news:%
Perdona mi intromision, pero estoy 100% de acuerdo con Hector,


sencillamente
programa para excel 2000 (segun dices) que eso lo hace compatible hacia
arriba. Personalmente te recomiendo las opciones 1 o 2 de las que


mencionas.

La diferencia entre la opcion 1 y 2 es unicamente el tipo de enlaces.
En


la
primera son en tiempo de diseño y en la segunda en tiempo de ejecución,


pero
la funcionalidad es exactamente la misma. La facilidad o dificultad es


solo
para programar porque no tendras la ayuda de Intellisense en el segundo
caso.


"Carlos Durán Urenda" escribió en el
mensaje
news:
> Gracias Hector
>
> Mi situacion es la siguiente
>
> Estoy programando en VB.Net y necesito crear reportes en excel, he
> investigado y experimentado con varias alternativas, pero cualquiera
> de
> ellas presenta sus propios problemas
>
> 1) haciendo referencia a la libreria de Excel, el problema de poner
> una
> referencia especifica en mi aplicacion, es que depende 100% de la


version
> que tengo instalado en mi equipo, en este caso la aplicacion que
> estoy
> desarrollando debera ejecutarse en diferentes maquinas con diferentes
> versiones de Excel (2000, 2002 (xp) y 2003), y apesar de que me
> permite
> controlar eficientemente el excel, depende mucho de la version
>
> 2) puedo establecer la referencia dinamicamente con la fucion
CreateObject,
> el problema es que no me brinada tanto control como la primera, y
> aunque
me
> han dicho que da cierta independencia de la version, esto en la
> practica
no
> es totalmente cierto, ademas de otros problemas que implica crear
> dinamicamente el objeto
>
> 3) la ultima alternativa es copiar los datos a Excel por medio de


ADO.Net,
> lo cual me permite escribir directamente sobre el libro de excel como
> si
> fuera una base de datos, y posteriormente abrirlo por medio de la


funcion
> Shell, lo que me brindaría 100% de independencia de la version de
> Excel,
> pero el reporte que estoy generando contiene una tabla dinamica, cuyo
rango
> deseo actualizar al abrir el libro, tambien deseo ajustar el texto de
> ciertas celdas para que quede lista para imprimirse directamente,
> debido


a
> que por medio del Shell ya no puedo controlar desde mi aplicacion el


libro
> abierto, pienso incluir una macro que al iniciar el libro ajuste
> todos


los
> campos de la tabla dinamica, lo unico que no deseo es que aparezca la
> pregunta sobre el nivel de seguridad de excel, especificamente para


dicho
> libro, creo en alguna ocacion haber escuchado algo sobre que se
> pueden
> firmar las macros como confiables de forma que no pregunte al
> iniciar,
pero
> no recuerdo en donde escuche eso, tu sabes si es cierto?
>
>
> Gracias
>
>
> "Héctor Miguel" escribió en el
> mensaje
> news:
> > hola, Carlos !
> >
> >> ... conocer las opciones de la linea de comandos de Excel
> >> ... indicar ... el nombre de archivo que deseo abrir
> >> ... que lo abra como solo lectura
> >> ... y que se salte la verificacion de las macros
> >
> > existen varias formas de abrir archivos 'conjuntamente' con la
aplicacion
> > [p.e.]...
> > - 'ponerlos' en el directorio 'XLStart'
> > - 'ponerlos' en el directorio de inicio 'alternativo'
> > - 'agregarlos' a la linea de comando que 'ejecuta' a la aplicacion
[entre
> > comillas dobles]
> > para 'hacerlos' de solo lectura [p.e.]...
> > - usar dicha opcion al momento de guardarlo [recomendar solo
> > lectura]
> > - [si la agregas a la linea de comandos]... anteponer '/R' [entre
> > la
> > aplicacion Y el archivo que se abrira]
> > para que 'se brinque' la advertencia de macros [p.e.]...
> > - 'bajar' el nivel de proteccion [lo cual es opcion DE CADA USUARIO


Y...
> > NO RECOMENDABLE]
> > - abrirlos 'desde' OTRO libro que YA tiene 'permiso' de usar macros
> > - 'firmarlos' [ya sea con la herramienta 'SelfCert' o comprando una
firma
> > digital]
> > - 'hacerlos' archivo de complemento [.XLA .XLL .COM etc.]
> >
> > son solo algunos ejemplos 'combinables' a tu eleccion
> > toma nota de que [de cualquier manera] 'tendrias que' hacer lo
conducente
> > EN CADA PC [donde lo 'requieras']
> >
> > si quieres hacerlo 'de un solo paso'... podrias modificar ->el
registro<-
> > [desde el editor de registros de windows]
> > agregando una clave alfanumerica a las opciones de apertura de la
> > aplicacion [p.e.]
> > ejecuta la herramienta RegEdit.exe y 'encuentra' la entrada de la
> > aplicacion...=>segun tu version de excel<>>>> > > -> Excel de Office 97...
> > Mi


PC\HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft
> > Excel
> > -> Excel de Office 2000/2002/2003...
> > Mi
> > PC\HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel\Options
> > =>x.0 es el numero de la version<>>>> > > -> [click-derecho] -> nuevo -> valor alfanumerico
> > -> nombre... = OPEN#
> > =>el signo '#' corresponde al siguiente numero en secuencia [si hay
> > alguno]... si no hay ninguno... tampoco 'va'<>>>> > > -> modifica el valor 'recien' creado para que se 'lea' +/- como


sigue...
> > /R "C:\Ruta y\Carpetas donde esta\Tu archivo.xls"
> >
> > este ultimo 'procedimiento' NO EVITA que se rastreen las macros por
> > [posibles] virus
> > [a menos que no este instalado algun programa anti-virus]
> > tambien debera quedar EN COMPLETA COMPRENSION que... ES BAJO TU
> > PROPIO
> > RIESGO
> >
> > saludos,
> > hector.
> >
>
>














Respuesta Responder a este mensaje
#9 Manuel Romero
10/12/2004 - 01:03 | Informe spam
Ya te entiendo, el problema de la instancia de excel ejcutandose es porque
cada vez que usas CretaeObject o New Excel.Application se crea un excel
oculto detras. Te recomiendo que mientras hagas las pruebas coloca
AppExcel.Visible=True cuando creas la instancia (AppExcel es el nombre de la
variable de Aplicacion que estes usando).

Si no quieres usar varias instancias para cada libro, no uses CreateObject,
usa GetObject que hace lo mismo, solo que usa alguna instancia abierta si la
hay.

Una cosa, como estas usando el CreateObject? El nombre de la clase deberia
ser "Excel.Application" para que sea indiferente de la version. El codigo
deberia ser algo asi

Dim xlApp As Object
On Error Resume Next
Set xlApp = GetObject(, "excel.application")
On Error GoTo 0
If xlApp Is Nothing Then Set xlApp = CreateObject("excel.application")
xlApp.Visible=True

Lo "malo" es que pierdes el Intellisense en el editor de codigo de VB.Net
como ya te habia dicho antes, pero uno se las arregla.

Para cuando quieras salir de excel normalmente

xlApp.DisplayAlerts=False ' para que no pregunte si quieres guardar cambios
xlApp.Quit


"Carlos Durán Urenda" escribió en el mensaje
news:
Gracias Manuel

Estoy programando una aplicacion en Visual Basic .Net, esta aplicacion se
distribuirá en las sucursales de la empresa...
el problema de la version no es por que este realizando una accion muy
especifica, si no por que si al programar establesco la referencia para la
version 10.00 (xp), que es la que tengo instalada en mi equipo, el


programa
marca error al tratar de ejecutarse en una maquina con una version


diferente
de excel, ese es mi problema con las versiones, la verdad no se si alguna
vez intentaste hacer esto, es bastante traumante ya que por alguna razon


al
establecer la referencia tanto en diseño como dinamicamente, me sucede que
el proceso de Excel se queda cargado en la memoria, y hasta lo que he


podido
ver, hay un buen debate a cerca de como matar ese proceso, eso aunado a


que
cada que se crea el objeto de Excel, se crea una instancia del programa,


es
un poco molesto tener cada archivo en una ventana de programa
independiente... en fin, me he topado con una serie de probleamas que no
esperaba encontrar.

Por otro lado, puedo llamar al libro desde la funcion Shell, dejando que
Windows sea el encargado de abrir el programa adecuado para manejar el
archivo, en este caso Excel, mi problea es que estoy resumiendo los datos


y
necesito ajustar el rango de la tabla dinamica debido a que cada vez se
abrirá con datos diferentes, tambien necesito ajustar el alto de algunas
filas para que se visualice toda la informacion, y no me agrada el mensaje
al iniciar el archivo con macros, eso es todo :-(


Agradezco tu coperación, y si tienes alguna idea mas al respecto me podria
dar mas luz en este tema


Saludos
Carlos Durán




"Manuel Romero" @hotmail.com> escribió en el mensaje
news:
> Otra cosa, no conozco los modelos de objeto de excel xp o 2003, pero


que
> necesitas hacer tan especifico como para que te importe cual version de
> Excel es?
>
> Ademas, si las macros las guardas en el libro y alguien quiere llevarse
> una
> copia del reporte, se llevara las macros con el. Y eso puede ser, aparte
> de
> quizas no conveniente para ti, incomodo para el usuario cuando cada vez
> que
> quiera ver su reporte y se le pregunte si quiere activar las macros.
>
> "Manuel Romero" @hotmail.com> escribió en el mensaje
> news:%
>> Perdona mi intromision, pero estoy 100% de acuerdo con Hector,
> sencillamente
>> programa para excel 2000 (segun dices) que eso lo hace compatible hacia
>> arriba. Personalmente te recomiendo las opciones 1 o 2 de las que
> mencionas.
>>
>> La diferencia entre la opcion 1 y 2 es unicamente el tipo de enlaces.


En
> la
>> primera son en tiempo de diseño y en la segunda en tiempo de ejecución,
> pero
>> la funcionalidad es exactamente la misma. La facilidad o dificultad es
> solo
>> para programar porque no tendras la ayuda de Intellisense en el segundo
>> caso.
>>
>>
>> "Carlos Durán Urenda" escribió en el


mensaje
>> news:
>> > Gracias Hector
>> >
>> > Mi situacion es la siguiente
>> >
>> > Estoy programando en VB.Net y necesito crear reportes en excel, he
>> > investigado y experimentado con varias alternativas, pero cualquiera


de
>> > ellas presenta sus propios problemas
>> >
>> > 1) haciendo referencia a la libreria de Excel, el problema de poner


una
>> > referencia especifica en mi aplicacion, es que depende 100% de la
> version
>> > que tengo instalado en mi equipo, en este caso la aplicacion que


estoy
>> > desarrollando debera ejecutarse en diferentes maquinas con diferentes
>> > versiones de Excel (2000, 2002 (xp) y 2003), y apesar de que me


permite
>> > controlar eficientemente el excel, depende mucho de la version
>> >
>> > 2) puedo establecer la referencia dinamicamente con la fucion
>> CreateObject,
>> > el problema es que no me brinada tanto control como la primera, y
>> > aunque
>> me
>> > han dicho que da cierta independencia de la version, esto en la
>> > practica
>> no
>> > es totalmente cierto, ademas de otros problemas que implica crear
>> > dinamicamente el objeto
>> >
>> > 3) la ultima alternativa es copiar los datos a Excel por medio de
> ADO.Net,
>> > lo cual me permite escribir directamente sobre el libro de excel como
>> > si
>> > fuera una base de datos, y posteriormente abrirlo por medio de la
> funcion
>> > Shell, lo que me brindaría 100% de independencia de la version de
>> > Excel,
>> > pero el reporte que estoy generando contiene una tabla dinamica, cuyo
>> rango
>> > deseo actualizar al abrir el libro, tambien deseo ajustar el texto de
>> > ciertas celdas para que quede lista para imprimirse directamente,
>> > debido
> a
>> > que por medio del Shell ya no puedo controlar desde mi aplicacion el
> libro
>> > abierto, pienso incluir una macro que al iniciar el libro ajuste


todos
> los
>> > campos de la tabla dinamica, lo unico que no deseo es que aparezca la
>> > pregunta sobre el nivel de seguridad de excel, especificamente para
> dicho
>> > libro, creo en alguna ocacion haber escuchado algo sobre que se


pueden
>> > firmar las macros como confiables de forma que no pregunte al


iniciar,
>> pero
>> > no recuerdo en donde escuche eso, tu sabes si es cierto?
>> >
>> >
>> > Gracias
>> >
>> >
>> > "Héctor Miguel" escribió en el


mensaje
>> > news:
>> > > hola, Carlos !
>> > >
>> > >> ... conocer las opciones de la linea de comandos de Excel
>> > >> ... indicar ... el nombre de archivo que deseo abrir
>> > >> ... que lo abra como solo lectura
>> > >> ... y que se salte la verificacion de las macros
>> > >
>> > > existen varias formas de abrir archivos 'conjuntamente' con la
>> aplicacion
>> > > [p.e.]...
>> > > - 'ponerlos' en el directorio 'XLStart'
>> > > - 'ponerlos' en el directorio de inicio 'alternativo'
>> > > - 'agregarlos' a la linea de comando que 'ejecuta' a la aplicacion
>> [entre
>> > > comillas dobles]
>> > > para 'hacerlos' de solo lectura [p.e.]...
>> > > - usar dicha opcion al momento de guardarlo [recomendar solo


lectura]
>> > > - [si la agregas a la linea de comandos]... anteponer '/R' [entre


la
>> > > aplicacion Y el archivo que se abrira]
>> > > para que 'se brinque' la advertencia de macros [p.e.]...
>> > > - 'bajar' el nivel de proteccion [lo cual es opcion DE CADA USUARIO
> Y...
>> > > NO RECOMENDABLE]
>> > > - abrirlos 'desde' OTRO libro que YA tiene 'permiso' de usar macros
>> > > - 'firmarlos' [ya sea con la herramienta 'SelfCert' o comprando una
>> firma
>> > > digital]
>> > > - 'hacerlos' archivo de complemento [.XLA .XLL .COM etc.]
>> > >
>> > > son solo algunos ejemplos 'combinables' a tu eleccion
>> > > toma nota de que [de cualquier manera] 'tendrias que' hacer lo
>> conducente
>> > > EN CADA PC [donde lo 'requieras']
>> > >
>> > > si quieres hacerlo 'de un solo paso'... podrias modificar ->el
>> registro<-
>> > > [desde el editor de registros de windows]
>> > > agregando una clave alfanumerica a las opciones de apertura de la
>> > > aplicacion [p.e.]
>> > > ejecuta la herramienta RegEdit.exe y 'encuentra' la entrada de la
>> > > aplicacion...=>segun tu version de excel<> >> > > -> Excel de Office 97...
>> > > Mi
> PC\HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft
>> > > Excel
>> > > -> Excel de Office 2000/2002/2003...
>> > > Mi
>> > > PC\HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Excel\Options
>> > > =>x.0 es el numero de la version<> >> > > -> [click-derecho] -> nuevo -> valor alfanumerico
>> > > -> nombre... = OPEN#
>> > > =>el signo '#' corresponde al siguiente numero en secuencia [si hay
>> > > alguno]... si no hay ninguno... tampoco 'va'<> >> > > -> modifica el valor 'recien' creado para que se 'lea' +/- como
> sigue...
>> > > /R "C:\Ruta y\Carpetas donde esta\Tu archivo.xls"
>> > >
>> > > este ultimo 'procedimiento' NO EVITA que se rastreen las macros por
>> > > [posibles] virus
>> > > [a menos que no este instalado algun programa anti-virus]
>> > > tambien debera quedar EN COMPLETA COMPRENSION que... ES BAJO TU
>> > > PROPIO
>> > > RIESGO
>> > >
>> > > saludos,
>> > > hector.
>> > >
>> >
>> >
>>
>>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida