![]() |
Automatizacion Word con c++
Buenas a todos.
Soy nuevo en el Foro pero no como programador. Estoy con un programa intentando generar un Documento de Word, si alguien necesita codigo lo pondre, pero voy a comentaros mi problema. Insertando una tabla desde builder C++ a Word no soy capaz de meter texto en ellas.....coloco el codigo por si huviera error..... GRACIAS Variant Tablas,Tabla1,que_celda,dentro_celda,TablasWord,Rango; //-- crear tabla de 2x2 TablasWord=WordDocu.OlePropertyGet("Tables"); Rango=seleccion.OlePropertyGet("Range"); Tablas=TablasWord.OleFunction("Add",Rango,2,2,1,0); //-- meter datos en celda 1-1 Tabla1=Tablas.OleFunction("Item",1); que_celda=Tabla1.OleFunction("Cell",1,1); dentro_celda=que_celda.OlePropertyGet("Range"); dentro_celda.OlePropertySet("Text"," texto para celda 1-1"); Compila bien, crea bien la tabla, pero al insertar texto da el siguiente error. Project Project1.exe raised exceptio class EOleSysError with message 'Nombre desconocido'. GRACIAS DE NUEVO :) |
¿Te refieres a la línea siguiente?
Código:
dentro_celda.OlePropertySet("Text"," texto para celda 1-1");Siento no ayudar más, pero hace años que no programo C++, nunca he usado Ole y el Word que uso es el de LibreOffice... |
Me refiero a escribir contenido dentro de ella, el metodo que utilizo parece estar correcto por otros codigos que encuentro, pero debe ser válido para la version 6, yo utilizo la 10. y no sera compatible.
Luego probando ocurre otro problema y es que... Con la siguiente linea se escribe en el documento no ?
Al haber creado la tabla si coloco la linea de codigo, me la escribe en la celda 1-1 y no se como slair de la tabla. Es un tanto raro. HELPPPP GRACIAS |
¿Has preguntado/buscado en la MSDN?
De todas formas, antes de que saliera el XP ya leí un libro sobre programación para NT que decía que Ole no era recomendable, y poco después que es obsoleto (como le pasó antes a DDE). |
Entonces si no utilizo OLE ?? con que lo hago, no mire la msdn estoy en ello.
si me pudieras decir con que hacerlo supongo que lo acabaria sacando utilizo OLE porque es lo unico que he visto asta ahora. GRACIAS de todas formas.. sabe alguien algo mas... |
Creo que puede hacerse con ActiveX, que es lo que se lleva ahora. Y no, tampoco lo he usado nunca (bueno, indirectamente quizá).
|
Gracias por la indicacion vere que puedo hacer.... :D
|
Cita:
Es el mismo sistema que se utiliza en un motón de lenguajes de script para controlar programas. Incluso el propio flamante Windows 7. Luego si hablamos de un libro de NT (y nos referimos a una versión vieja), no podría decir que OLE está obsoleto (como mucho que OLE1 está obsoleto), ya que OLE2 nació por esas fechas. Incluso aceptaría que OLE2 está obsoleto, por eso Microsoft dice que podemos quitar el OLE de "Automation", y llamarlo así a secas. Que no son más que una forma de usar un tipo de interfaces COM. Y esto difícilmente puede estar obsoleto ya que Windows es como un Lego de objetos COM. Me encantaría conocer el libro donde pone que esto está obsoleto, si es posible. Gracias. |
Cita:
Variant Tablas,Tabla1,que_celda,dentro_celda,TablasWord,Rango; //-- crear tabla de 2x2 TablasWord=WordDocu.OlePropertyGet("Tables"); Rango=seleccion.OlePropertyGet("Range"); Tabla1 /*Tablas*/ = TablasWord.OleFunction("Add", Rango, 2, 2, 1, 0); //-- meter datos en celda 1-1 // Tabla1=Tablas.OleFunction("Item", 1); que_celda=Tabla1.OleFunction("Cell",1,1); dentro_celda=que_celda.OlePropertyGet("Range"); dentro_celda.OlePropertySet("Text"," texto para celda 1-1"); Cita:
seleccion.OleProcedure("TypeText", "Fuera de la tabla"); |
Cita:
No se como agradecertelo, pero funciona MUCHAS GRACIAS ya no sabia que mas intentar..... De donde has sacado la maravillosa porpiedad de EndKey ¿? donde podria ver documentacion de OLE y automatizacion. Una ultima cosa se insertar imagenes pero se me colocan todas en la primera pagina del Word, eso tiene solucion, utilizo el siguiente codigo. Código:
Variant img=WordDocu.OlePropertyGet("Shapes"); |
Cita:
Cita:
msdn.microsoft.com/en-us/library/ff841702.aspx Cita:
|
Cita:
|
Gracias a los 2 de todos modos.... me ha servido para avanzar en el programa, me quedan nubes aun (crear una nueva hoja a la que tengo,colocar la imagen donde quiera) pero bueno.... no consigo moverme bien por "msdn" sera por el ingles :(.
Conocen algun libro muy bueno de Automatizacion del Office ¿? GRACIAS !!!! :D |
| La franja horaria es GMT +2. Ahora son las 05:31:35. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi