Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2006
nax nax is offline
Miembro
 
Registrado: mar 2004
Posts: 52
Poder: 21
nax Va por buen camino
Excel Y Salto De Página

Hola, qué tal. He checado en otros hilos sobre el salto de páginas en una hoja de excel, pero no lo he logrado resolver para C++ Builder, ¿alguien tiene idea de cómo? De antemano gracias!!!
Responder Con Cita
  #2  
Antiguo 17-01-2006
Avatar de OSKR
OSKR OSKR is offline
Miembro
 
Registrado: nov 2004
Ubicación: San Cristóbal/Táchira/Venezuela
Posts: 389
Poder: 20
OSKR Va por buen camino
No se q problema real tienes porq no lo especificas al detalle, por si acaso el Sr Alt126 nos resuelve caso todos los problemas con excel y casi otros de Office aqui, dede entonces yo lo aplico
__________________
Los Estados Unidos parecen destinados por la Providencia para plagar la América de miserias a nombre de la libertad."
Simón Bolívar
(Carta al Coronel Inglés Patricio Cambell 05/08/1829).
Responder Con Cita
  #3  
Antiguo 18-01-2006
nax nax is offline
Miembro
 
Registrado: mar 2004
Posts: 52
Poder: 21
nax Va por buen camino
Qué tal!! Bueno, el problema es el siguiente: desde C++ Builder creo una hoja de Excel y la voy llenando con información (desde Builder), el hecho es que en cierto momento deseo indicar un salto de página en la hoja, es decir, que cuando se mande a imprimir esa hoja de Excel la info no aparezca de corrido, sino separada de acuerdo a los saltos de página que se indicaron. Gracias de antemano.
Responder Con Cita
  #4  
Antiguo 25-01-2006
Avatar de alt126
alt126 alt126 is offline
Miembro
 
Registrado: dic 2004
Posts: 171
Poder: 20
alt126 Va por buen camino
bueno...vamos a ver...que yo sepa, en excell, no hay saltos de pagina...solo puedes moverte de una celda a la otra...tanto horizontal como verticalmente.

asi que, si quieres hacer el efecto de salto de pagina, lo unico que puedes hacer es saltarte 2 o 3 celdas, y escribir mas abajo.

Mira a ver si eso es lo que quieres hacer...y sino...explica con algun ejemplo.

Para moverte puedes usar:

Código:
Variant Aplicacion_Word;    
Variant Selection;

Aplicacion_Word = Variant::CreateObject("Word.Application");
Aplicacion_Word.OlePropertySet("Visible", true);
Selection = Aplicacion_Word.OlePropertyGet("Selection");
Selection.OleFunction("TypeParagraph");
Selection.OleProcedure("MoveRight");
Selection.OleProcedure("MoveDown");
__________________
Un saludo

Antonio
Responder Con Cita
  #5  
Antiguo 25-01-2006
Avatar de alt126
alt126 alt126 is offline
Miembro
 
Registrado: dic 2004
Posts: 171
Poder: 20
alt126 Va por buen camino
Perdon...el codigo que te envie antes...era para WORD...ahora te pongo el de excell....

Si ves al final de este codigo....usas la propiedad fila y columna para rellenar celdas en concreto, asi que puedes dejar en blanco tantas como quieras.

Código:
//Ahora construimos el documento excel y lo mostramos.
//Creo un Objeto de tipo aplicacion 'Excel'
Variant Excel  = Variant::CreateObject("Excel.Application");
//Accedo a sus propiedades y metodos con 'OlePropertySet'
Excel.OlePropertySet("Visible",(Variant)true);
//Obtengo un objeto que será una coleccion de objetos libros
Variant MiColeccionLibros=Excel.OlePropertyGet("Workbooks");
//Creamos los libros.
//La Coleccion esta vacia y voy a añadir un libro
MiColeccionLibros.OleProcedure("Add");
//A partir de la Coleccion obtengo el primer objeto 'libro'
Variant MiLibro=MiColeccionLibros.OlePropertyGet("Item",(Variant)1);
//A partir del objeto libro obtengo una coleccion de hojas
Variant MIColeccionHojas=MiLibro.OlePropertyGet("Worksheets") ;
//A partir de la coleccion de hojas accedo de objetos hojas y las nombra
MIColeccionHojas.OlePropertyGet("Item",(Variant)1).OlePropertySet("Name",(Variant)"nombre");
//Obtengo un objeto hoja, a partir de la coleccion de hojas
Variant MiHoja=MIColeccionHojas.OlePropertyGet("Item",(Variant)1);
 
int fila,columna.
 
fila = 1;
columna = 2;


 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertyGet("Font").OlePropertySet("Italic",(Variant)cursiva);

 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertyGet("Font").OlePropertySet("Bold",(Variant)true);

 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertyGet("Font").OlePropertySet("Size",(Variant)10);

 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertyGet("Font").OlePropertySet("Color",(Variant)clBlack);

 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertySet("Value","dato");

 
Hoja.OlePropertyGet("Cells").OlePropertyGet("Item",(Variant)fila,(Variant)columna).OlePropertyGet("Interior").OlePropertySet("ColorIndex",(Variant)clWhite);
__________________
Un saludo

Antonio
Responder Con Cita
  #6  
Antiguo 28-01-2006
nax nax is offline
Miembro
 
Registrado: mar 2004
Posts: 52
Poder: 21
nax Va por buen camino
Qué tal, agradezco el seguimiento que le han dado a mis preguntas. El problema en particular que tengo es que al mandar a imprimir una hoja de Excel esta obviamente se imprime poniendo toda su información de manera corrida. Ahora lo que quiero es imprimir digamos los primeros n renglones en una hoja (en negrita para distinguir hoja (de Excel) y hoja (el papel en impresora)), el siguiente grupo de renglones en la segunda, y así sucesivamente. He visto que en el menú excel, existe una opción en Insertar/Salto de página que permite precisamente indicar qué información se imprimirá en una hoja y qué información en la siguiente.
Un saludo, y nuevamente gracias.
Responder Con Cita
  #7  
Antiguo 28-01-2006
nax nax is offline
Miembro
 
Registrado: mar 2004
Posts: 52
Poder: 21
nax Va por buen camino
Se me pasó, por ejemplo en Delphi para insertar un salto de página es algo así ExcelApp.WorkSheets[1].Rows[8].PageBreak := 1; y así pues ya se forza a que el contenido después de ese salto de página se imprima en otra hoja.
Saludos.
Responder Con Cita
  #8  
Antiguo 29-01-2006
nax nax is offline
Miembro
 
Registrado: mar 2004
Posts: 52
Poder: 21
nax Va por buen camino
Uuuuuaaaaaaah, gracias a Dios ya estuvo resuelto el problema. Me apoyé directamente con la info. que proporciona mocosoft desde su página sobre los métodos y procedimientos de HPageBreaks
http://msdn2.microsoft.com/en-us/lib...agebreaks.aspx

Bien, el código que hice es:

Código:
String r = "A15"; // 15 es el renglón donde voy a poner el salto de página
 
Variant Rango = Hoja.OlePropertyGet("Range", r.c_str());
 
Hoja.OlePropertyGet("HPageBreaks").OleProcedure("Add", Rango);
Saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Problemas con salto de Página her27 Impresión 8 21-06-2005 16:51:33
Salto de Página en fastreport o freereport cahosoft Impresión 0 13-07-2004 20:05:26
Salto de página con QReport Will Impresión 1 23-04-2004 00:53:46
Salro de pagina en excel xerkan Servers 4 31-10-2003 13:54:55
Salto de pagina con Qreport DanielAlexander Impresión 0 24-06-2003 18:05:01


La franja horaria es GMT +2. Ahora son las 13:01:16.


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