Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-07-2010
reevil reevil is offline
Miembro
 
Registrado: abr 2006
Posts: 179
Poder: 19
reevil Va por buen camino
Rellenar celdas al estilo excel (progresión aritmetica)

Hola.
El problema es el siguiente:
trato de hacer lo mismo que se hace en excel al seleccionar dos celdas (en una misma columna y cada una con un valor numerico diferente ) luego hacemos clic en editar -> rellenar celdas y automáticamente las celdas intermedias se rellenan. Algo así como sacar una tendencia en base a dos valores que pueden ser positivos o negativos.

Poniéndolo mas gráfico:

2
x1
x2
x3
10

pasa a ser

2
4
6
8
10

La idea es emular esto en un grid o similar, de hecho ya lo hace pero me gustaría saber si existe alguna forma mas elegante y/o rápida, pues lo que yo hice fue tomar los dos valores, determinar cual es mayor (para saber si sera un incremento o un decremento) sacar la diferencia de esos numeros y dividirla entre los espacios a rellenar y con eso obtengo el incremento/decremento que debo aplicar al momento de rellenar las celdas y ya solo basta recorrerlas con un for o while y asignarle el valor de la celda anterior + o - el valor del incremento o decremento.

Supongo que hay algo mejor que lo que hago yo pues excel lo hace inmediato.

Saludos.
Responder Con Cita
  #2  
Antiguo 14-07-2010
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Pues el algoritmo parece correcto y eficiente
- buscar diferencia
- buscar cantidad de celtas
- dividir diferencia / cantidad de celtas
- recorrer las celdas sumando esta división

No se a que te refieres con que "Excel lo hace inmediato".

Si lo que te falla es la velocidad, puede que estés trabajando con un componente lento o que estés haciendo las lecturas/escrituras directamente en el archivo de disco.

Trata de trabajár en memoria con los datos.
Responder Con Cita
  #3  
Antiguo 14-07-2010
reevil reevil is offline
Miembro
 
Registrado: abr 2006
Posts: 179
Poder: 19
reevil Va por buen camino
Hola, gracias por responder.
En efecto lo que busco es algo mas de velocidad (mas que nada como capricho pues la demora es en realidad poca) ya que trabajando con 2000 o mas datos si se nota una leve pausa en el programa y en excel no. Para las pruebas que he realizado lo implemente con los componentes Grid y DBGrid.
Saludos.
Responder Con Cita
Respuesta



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
DBGrid Tipo Celdas Excel david duarte OOP 11 29-06-2006 19:43:54
Excel Y Celdas Con Texto/numeros nax C++ Builder 3 16-01-2006 00:35:49
Ancho de celdas al exportar a excel Pascual Montes Varios 4 01-06-2005 20:07:20
Formatos de celdas en Excel lgarcia Servers 1 28-01-2005 20:31:37
Bloqueo de celdas de Excel Sergio Servers 2 16-10-2003 09:36:05


La franja horaria es GMT +2. Ahora son las 15:11:58.


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