Copiar una fila o columna de una grilla
:o 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 :o
|
Hola.
¿y la duda es? :confused: |
La duda es
:D 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?????:D
|
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. ;) |
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 |
|
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.
|
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. ;) |
Cita:
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... |
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 :p
|
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í:
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. |
La franja horaria es GMT +2. Ahora son las 15:09:12. |
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