Problemas al seleccionar un rango via automatización.

19/08/2009 - 16:06 por mpulla | Informe spam
Problemas con automatización.

Buen dia.
Tengo un PC con office 2000, desde una aplicación mando a crear libro
Excel insertando datos y dándole formato, pero dio problemas en varias
instrucciones de la aplicación, por lo que desinstale office 2000 e
instale office 2003, pero el problema persiste, lo raro del problema
es que en otro PC con office 2003 al mandar a crear el libro Excel
desde la misma aplicación igual versión esta corre sin problemas.
Mi código esta hecho en Visual FoxPro 8, y la línea que da problemas
es al seleccionar el rango.

WITH .Range("A4,J4,K4,M3,M4,O4,P4,Q4,R4")
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
ENDWITH

En mi PC tengo instalado Office 2003, 2007 y la aplacion no tiene
problemas.

Realmente no se que puede estar mal, espero me puedan ayudar.

Saludos.
Mauricio Pulla.
Cuenca-Ecuador

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
19/08/2009 - 20:40 | Informe spam
hola, Mauricio !

... desde una aplicacion mando a crear libro... insertando datos y dandole formato
pero dio problemas en varias instrucciones de la aplicacion
por lo que desinstale office 2000 e instale office 2003 pero el problema persiste
lo raro del problema es que en otro PC con office 2003 al mandar a crear el libro Excel
desde la misma aplicacion igual version esta corre sin problemas.
Mi codigo esta hecho en Visual FoxPro 8, y la linea que da problemas es al seleccionar el rango.

WITH .Range("A4,J4,K4,M3,M4,O4,P4,Q4,R4")
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
ENDWITH

En mi PC tengo instalado Office 2003, 2007 y la aplacion no tiene problemas.
Realmente no se que puede estar mal, espero me puedan ayudar...



(hasta donde se...) cuando excel es una instancia provocada/controlada desde una aplicacion stand-alone (VB, VFP, etc.)
-> no es una aplicacion que este en control total de sus habilidades
-> ningun archivo de auto-carga/apertura se inicia en conjunto (complementos, ni siquiera el personal.xls)
-> por este motivo... las constantes (internas) de excel (como xlDown, xlCenter, xlCellTypeVisible, xlR1C1, etc.)...
NO son transparentes para la aplicacion instanciadora (salvo -probablemente- en la version 2007 -?-)

bajo estas sircunstancias... necesitaras...
o... CAMBIAR (en esas lineas de codigo) las constantes POR su valor real...
p.e. xlCenter (que es lo mismo que xlHAlignCenter) equivale al valor -4108 (menos_cuatro_uno_cero_ocho)
puedes comprobar esos valores (en vba de excel) desde la ventana de inmediato con la sentencia: ? xlCenter y pulsas {enter}
o... que en tu proyecto VB/VFP/... establezcas una referencia a la libreria de objetos de excel

espero que algo de lo siguiente pueda ser de utilidad para encontrar el mejor medio de automatizar excel
pero, si cualuier duda (o informacion adicional)... comentas ?
saludos,
hector.

=
te puedes bajar un ZIP con las equivalencias de las constantes de excel en: http://www.cpearson.com/Zips/XLConsts2.ZIP

en las paginas de el guille encuentras varios temas relacionados con excel: -> http://tinyurl.com/kn8vbl

en el sitio de Emilio Sancha tambien encuentras algunos ejemplos con medios de automatizacio hacia excel:
-> http://www.mvp-access.es/emilio/Exc...cargas.asp

en la pagina de Ole P Erlandsen hay mas ejemplos de automatizacio de excel desde otras aplicaciones (word, ppnt, etc.)
-> http://www.erlandsendata.no/english...t=envbaole

o puedes buscar articulos relaciondos desde la base del conocimiento de MS (p.e.)

Como automatizar Microsoft Excel desde Visual Basic
http://support.microsoft.com/kb/219151/

Como automatizar Microsoft Excel desde Microsoft Visual C# .NET
http://support.microsoft.com/kb/302084

desde la MSDN hay mas articulos relacionados con excel y su automatizacion
http://social.msdn.microsoft.com/Se...n&ac=3
Respuesta Responder a este mensaje
#2 mpulla
19/08/2009 - 23:30 | Informe spam
Héctor Miguel, gracias por responder.

-> por este motivo... las constantes (internas) de excel (como xlDown, xlCenter, xlCellTypeVisible, xlR1C1, etc.)...
NO son transparentes para la aplicacion instanciadora (salvo -probablemente- en la version 2007 -?-)


Para manejar las constantes acompaño a mi apliacion de un archivo de
constantes, por lo que el problema no viene por ahi.

No entiendo por que en un PC con excel 2003 responde vien, y en otro
PC donde antes tenia excel 2000 y que ahora tiene excel 2003, da este
tipo de problemas.

nuevamente gracias, y toca revisar los links a ver que encuentro, si
tienes otra sugerencia, por favor hasmela saber.

Saludos.
Maurcio Pulla.
Cuenca-Ecuador
Respuesta Responder a este mensaje
#3 Héctor Miguel
20/08/2009 - 05:01 | Informe spam
hola, Mauricio !

Para manejar las constantes acompaño a mi apliacion de un archivo de constantes, por lo que el problema no viene por ahi.
No entiendo por que en un PC con excel 2003 responde vien, y en otro PC
donde antes tenia excel 2000 y que ahora tiene excel 2003, da este tipo de problemas.
... toca revisar los links a ver que encuentro, si tienes otra sugerencia, por favor hasmela saber.



no tengo experiencia en como un archivo de constantes se adjunta para manejar una aplicacion externa
y cabria la posibilidad de que en la (nueva) instalacion (xl-2003) no se hubiera instalado "todo lo necesario"
habria que comprobar/corregir/... si los componentes que requiere tu aplicacion estan disponibles -?-

comentas (si encuentras) algun detalle mas descriptivo ?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida