tronxx Lt JG


Registrado: 30 May 2003Mensajes: 56Ubicación: Merida, Yucatan, Mexico
|
Publicado: Mar 08 Sep, 2009 5:42 pm Asunto: Copiar un rango de celdas excel |
|
|
Hola amigos, hoy escribo para aportar algo. He tenido la necesidad de copiar un rango de celdas desde excel a la misma hoja, esto por que hago el formateo de las celdas para que tengan bordes, tam de font, centrado, etc. y para no hacer lo mismo por cada registro pues mejor hago un machote de celdas y las copio, estuve buscando en este maravilloso foro y no encontré el código, así que aquí lo expongo por si a alguien le sirve.
| Código: |
Variant excel = CreateOleObject("Excel.Application");
excel.OlePropertySet("Visible", true);
// Abrimos un archivo
Variant libros = excel.OlePropertyGet("Workbooks");
libros.OleFunction("Open", WideString(sFicheroPlantilla));
Variant libro = excel.OlePropertyGet("ActiveWorkbook");
// Escribimos algo en la primera celda de la hoja activa
Variant hoja = excel.OlePropertyGet("ActiveSheet");
.
.
.
if(ren_z > 5) {
// Cuando mi renglón es mayo de 5 significa que tengo que copiar
// el renglón 5 y 6 de la columna 1 a la 14
Variant range = hoja.OlePropertyGet("Range", "A5:P6");
range.OlePropertyGet("Copy");
String nvorango_z = "A" + IntToStr(ren_z) + ":" + "P" + IntToStr(ren_z+1);
Variant range2 = hoja.OlePropertyGet("Range", nvorango_z.c_str());
range2.OleProcedure("Select");
hoja.OleProcedure("Paste");
}
|
en este código copio de la cela A5 hasta la P6 y lo pego en el renglón que sigue. _________________ La caja decía, requiere Win95 o superior así que instalé Linux. |
|