![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
No estoy seguro de haber entendido pero te pongo una idea.
Tengo una situación similar en la que debo elaborar listas de alumnos de uno o más grupos. Cada grupo debe ir en una hoja distinta pero todas los hojas son iguales en cuanto al formato. En lugar de crear una hoja oculta lo que hago es crear la primera hoja a partir de una plantilla (como le haces tú, segun me parece) y lleno los datos. Cuando tengo que agregar una nueva hoja utilizo algo así: Código:
Hoja := Libro.ActiveSheet as _WORKSHEET; Hoja.Copy(null, Hoja, 0); Hoja := Libro.ActiveSheet as _WORKSHEET; Hoja.Name := 'Hoja' + IntToStr(Libro.Sheets.Count); LimpiarHoja(Hoja); En el método LimpiarHoja simplemente borro las celdas que me interesen: Hoja.Cells.Item[Ren, Col] := ''; preservando las que sean comunes como títulos y demás. En cuanto a lo de que se cuelga quizá te sirva poner Excel.AutoQuit en true. // Saludos |
|
#2
|
|||
|
|||
|
Tengo un error al pegar celdas copiadas
Gracias por la respuesta Sr. Moderador Roman, me sirvio mucho.
Estuve investigando y probando y probando y bueno, logre encontrar algunos hilos en el foro q me sirvieron. Y desarrolle lo siguiente. Utilizo : TExelApplication, TExcelWorkBook, TExcelWorkSheet * Me conecto a Excel * Abro el Arhivo (File.xls) * // El Libro de Excel tiene cierto numero de Hojas, q se crean dinamicamente de acuerdo a una condicion "x" en el nombre de la hoja , entonces si no cumple una condicion debo crear una hoja, en base a una de las hojas ya existentes. * Entonces si voy a crear una nueva hoja, me conecto a la hoja donde esta la plantilla. (la ubico por el nombre) // xRef : Index de la hoja con la plantilla // Me conecto ExcelWorkSheet1.ConnectTo(ExcelApplication1.Sheets[xRef] as _WorkSheet); // Copio las seldas selecciondas ExcelWorksheet1.Range['A1', 'DJ220'].Copy(EmptyParam); // Luego me conecto a la hoja nueva donde pegare las celdas copiadas, estas celdas tienen formulas ExcelWorkbook1.ConnectTo(ExcelApplication1.ActiveWorkbook As _WorkBook); ExcelWorkBook1.Sheets.Add(EmptyParam,EmptyParam,1,1,0); ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets['Sheet1'] as _Worksheet); ExcelWorkSheet1.Paste(EmptyParam); // aqui da error * Tambien da error con : ExcelWorkSheet1.Paste(EmptyParam,EmptyParam); ExcelWorkSheet1.Paste(EmptyParam,EmptyParam,EmptyParam); ExcelWorkSheet1.Paste; // Me carga Visual Basic con el mensaje "Compile Error : Can't find project or library" * Espero q alguien pueda ayudarme, Gracias por la ayuda. Joseph Lima - Perú |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|