Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-10-2006
Marcela Marcela is offline
Miembro
 
Registrado: may 2003
Posts: 30
Poder: 0
Marcela Va por buen camino
Red face Copiar una fila o columna de una grilla

Tego una grilla DBGrid y necesito que cuando selecciono la columna o la fila y dar la opcion copiar, pueda abrir la hoja de excel y que me copie los daots de la fila o columna que seleccione y a la cual le di copiar. Gracias
Responder Con Cita
  #2  
Antiguo 04-10-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Hola.

¿y la duda es?

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 04-10-2006
Marcela Marcela is offline
Miembro
 
Registrado: may 2003
Posts: 30
Poder: 0
Marcela Va por buen camino
Talking La duda es

Como lo hago, no se si sea una propiedad de la grilla o de la tabla o de la columna o si esxiste algun componente?????
Responder Con Cita
  #4  
Antiguo 04-10-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
No hay forma de hacerlo desde un DBGrid, pero si hay componentes como las QuantumGrid (de pago) que lo permiten.

Por otro lado, hay variedad de componentes que exportan un dataset a excel, seguro que en torry encontrás uno que cumpla tus requerimientos.

Finalmente, podrías exportar a mano, pero solo si no hay de otra, ¿para que reinventar la rueda?.

Saludos.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Esto lo busque en el foro y te da varias opciones:

Truco de Bicho:
http://www.clubdelphi.com/trucos/ind...ll=0&scrollb=0

Imprimir exel desde delphi
http://www.clubdelphi.com/foros/show...highlight=exel

Ademas si buscas por exel en los foros encontraras mas cosas interesantes
Espero te ayude
Saludos
Responder Con Cita
  #6  
Antiguo 04-10-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Para exporar a Excel, además de lo dicho (y ya que has preguntado por componentes) yo te recomendaría los de max, muy buenos para exportar a distintos formatos (entre ellos Excel) y los de Federico.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 05-10-2006
Marcela Marcela is offline
Miembro
 
Registrado: may 2003
Posts: 30
Poder: 0
Marcela Va por buen camino
No es la idea

Hola, la idea no es exportar a excel es copiar y pegar. Copio desde la grilla lo que tenga marcado y pego en una hoja de excel, word, etc.
Responder Con Cita
  #8  
Antiguo 05-10-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Lo siento, no había entendido bien el asunto.

Lamento no poder ayudar mas... solo insistir en que las QuantumGrid si tienen este comportamiento, solo que son de pago.

Si estas no son opción, podrías hacerla a mano; no veo extremadamente complicado determinar el formato en el que excel espera encontrar los datos y pasarlos así al clipboard.. pero seguramente llevará unas buenas horas de programación.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #9  
Antiguo 05-10-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Marcela
...la idea no es exportar a excel es copiar y pegar. Copio desde la grilla lo que tenga marcado y pego en una hoja de excel, word, etc.
Ok, yo tampoco había entendido en tema.
Para pegar en Excel el formato es sencillo; Debes conseguir un texto que en que cada línea esté seperada por salto de carro y cada campo de las filas separados por tabulación.
Puedes hacer un doble bucle, uno para las líneas seleccionaas y otro para los campos de cada línea; La condición es la comentada; Los campos separados por TABULACION y las líneas por SALTO DE CARRO.

Si creas el texto con éste formato, puedes ir al Excel y hacer un PEGAR, y te lo colocará los campos por celdas, como si fuera una tabla.

Pruébalo, si tienes problemas con el código coméntalo y te echamos una mano...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 05-10-2006
Marcela Marcela is offline
Miembro
 
Registrado: may 2003
Posts: 30
Poder: 0
Marcela Va por buen camino
Ok,

Muchas gracias, voy a intentar programarlo, aunque no era mi idea, porque como me dijeron por ahi, para que inventar algo que ya eta desarrollado, ademas tampoco puedo adquirir el componente que me dicen, en conclusión, me toco, pero si alguien sabe de algo, porfis estare pendiente. Gracias
Responder Con Cita
  #11  
Antiguo 05-10-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Aquí tienes un código que puede servirte; En la sección de ejemplos hay uno que trata sobre TStringGrid; Aunque es para temas de alineación, incluye una opción de copiar.
Algo así:

Código Delphi [-]
var
  i, j:Integer;
  Str:String;
begin

  // Inicializamos
  Str := '';
  // Para cada línea de las selecciondas
  for i := (StringGrid1.Selection.Top) to (StringGrid1.Selection.Bottom) do begin
    // Si no es la 1ª linea, añadimos un salto de línea
    if (i <> StringGrid1.Selection.Top) then begin
      Str := Str + #13#10;
    end;
    // Para cada elemento dentro de la línea (celdas)
    for j := 0 to (StringGrid1.Rows[i].Count - 1) do begin
      // Si no es la primera celda, añadimos un separados
      if (j <> 0) then begin
        Str := Str + ';';   <<== Cambiar por chr(VK_TAB)
      end;
      // Construimos la cadena
      Str := Str + StringGrid1.Rows[i].Strings[j];
    end;
    // La guardamos en el clipboard (como texto)
    Clipboard.AsText := Str
  end;

  MessageDlg('El contenido de la/s celda/s se ha copiado al portapapeles de windows', mtInformation, [mbOK], 0);

Si haces el cambio marcado en rojo (usar TAB en lugar de es casi lo que necesitas; La diferencia es que este en para un TStringGrid y tú lo necesitas para un DBGrid; Sólo cambia la forma de recorrer las filas seleccionadas.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
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
Pintar una columna de una grilla zugazua2001 Varios 2 16-08-2006 17:26:10
Resaltar una fila de una grilla zugazua2001 Varios 1 11-09-2005 21:28:20
Como capturo columna y fila pruz Varios 1 18-08-2005 15:53:30
copiar fila de una tabla davidgaldo Conexión con bases de datos 2 26-02-2004 13:28:43
'nrow' en cada fila de grilla Roy Varios 3 30-01-2004 15:46:51


La franja horaria es GMT +2. Ahora son las 12:02:42.


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