DotNetcr.com
Si deseas hacer un intercambio de links con DotNetcr, escríbenos aquí
Recibe las actualizaciones vía RSS
Te invitamos a unirte en nuestras redes
   http://www.facebook.com/DotNetcr
   http://www.twitter.com/dotnetcr

Exportar datos a Excel

Por royrojas | 10/2/2005 | Visitas 104,520 | Voto 5.00
En este ejemplo vamos a aprender como exportar los datos en un DataGrid, DataTable o DataSet a Excel
Categorías : VB.NET
Descargar Ejemplo ExportarDatosExcel.zip

En nuestras aplicaciones necesitaremos en algun momento exportar datos que tengamos en pantalla a reportes en Excel, aqui te mostraré como hacer esto.

El primer paso sera tener los datos en el objeto que queramos DataGrid, DataSet o DataTable para luego solo invocando una funciones exportar estos datos el Excel.

Vamos a crear un form con un DataGrid para mostrar los datos.



Para efectos del ejemplo vamos a llenar el DataGrid con estos datos

Dim dt As New DataTable
Dim dr As DataRow

dt.Columns.Add(New DataColumn("Codigo", GetType(String)))
dt.Columns.Add(New DataColumn("Descripcion", GetType(String)))
dt.Columns.Add(New DataColumn("Valor", GetType(Integer)))

dr = dt.NewRow()
dr("Codigo") = "A"
dr("Descripcion") = "Activo"
dr("Valor") = 1
dt.Rows.Add(dr)

dr = dt.NewRow()
dr("Codigo") = "I"
dr("Descripcion") = "Inactivo"
dr("Valor") = 2
dt.Rows.Add(dr)

dr = dt.NewRow()
dr("Codigo") = "B"
dr("Descripcion") = "Bloqueado"
dr("Valor") = 3
dt.Rows.Add(dr)

Me.dgDatos.DataSource = dt


Ahora, como enviar estos datos el Excel y tener un resultado como el siguiente?



Las funciones que vamos a utilizar para exportar a Excel son las siguientes:

Public Sub DataTableToExcel(ByVal pDataTable As DataTable)

Dim vFileName As String = Path.GetTempFileName()

FileOpen(1, vFileName, OpenMode.Output)

Dim sb As String
Dim dc As DataColumn
For Each dc In pDataTable.Columns
sb &= dc.Caption & Microsoft.VisualBasic.ControlChars.Tab
Next
PrintLine(1, sb)

Dim i As Integer = 0
Dim dr As DataRow
For Each dr In pDataTable.Rows
i = 0 : sb = ""
For Each dc In pDataTable.Columns
If Not IsDBNull(dr(i)) Then
sb &= CStr(dr(i)) & Microsoft.VisualBasic.ControlChars.Tab
Else
sb &= Microsoft.VisualBasic.ControlChars.Tab
End If
i += 1
Next

PrintLine(1, sb)
Next

FileClose(1)
TextToExcel(vFileName)

End Sub

Public Sub TextToExcel(ByVal pFileName As String)

Dim vFormato As Excel.XlRangeAutoFormat

Dim vCultura As System.Globalization.CultureInfo = _
System.Threading.Thread.CurrentThread.CurrentCulture

'Es importante definirle la cultura al sistema
'ya que podria generar errores
System.Threading.Thread.CurrentThread.CurrentCulture = _
System.Globalization.CultureInfo.CreateSpecificCulture("en-US")

Dim Exc As Excel.Application = New Excel.Application
Exc.Workbooks.OpenText(pFileName, , , , _
Excel.XlTextQualifier.xlTextQualifierNone, , True)

Dim Wb As Excel.Workbook = Exc.ActiveWorkbook
Dim Ws As Excel.Worksheet = Wb.ActiveSheet


vFormato = Excel.XlRangeAutoFormat.xlRangeAutoFormatSimple
'En el ejemplo vienen otros formatos posibles

Ws.Range(Ws.Cells(1, 1), _
Ws.Cells(Ws.UsedRange.Rows.Count, _
Ws.UsedRange.Columns.Count)).AutoFormat(vFormato)

pFileName = Path.GetTempFileName.Replace("tmp", "xls")
File.Delete(pFileName)

Exc.ActiveWorkbook.SaveAs(pFileName, _
Excel.XlTextQualifier.xlTextQualifierNone - 1)

Exc.Quit()

Ws = Nothing
Wb = Nothing
Exc = Nothing

GC.Collect()
If valor > -1 Then
Dim p As System.Diagnostics.Process = New System.Diagnostics.Process
p.EnableRaisingEvents = False
p.Start("Excel.exe", pFileName)
End If
System.Threading.Thread.CurrentThread.CurrentCulture = vCultura
End Sub


Una ves definidos estas funciones solamente nos queda invocarlas para que los datos se reflejen en el Excel.

Si el objeto que tenemos en el DataGrid es un DataTable:

DataTableToExcel(CType(Me.dgDatos.DataSource, DataTable))


Si el objeto que tenemos en el DataGrid es un DataSet:

Dim dt As New DataTable
dt = CType(Me.dgDatos.DataSource, DataSet).Tables(0)
DataTableToExcel(dt)


La funcion DataTableToExcel como su nombre lo indica lo que recibe es un DataTable, asi que hay que tenerlo en cuenta.

Este código fuente es el que recomienda Microsoft para exportar sus datos a Excel, y es importante saber que funciona con Office XP o superior.

Descargar Ejemplo ExportarDatosExcel.zip

Referencias en Microsoft MSDN
- DataTable Object [Excel 2003 VBA Language Reference]
- DataTable Property [Excel 2003 VBA Language Reference]
- A Primer to the Office XP Primary Interop Assemblies

Descargar Ejemplo ExportarDatosExcel.zip
Area de Comentarios
Por Anónimo - Fecha: 2006/03/03 06:30 AM
En caso de que en una columna del datagrid tipo string tengamos un valor como este 0003223 que representa un codigo de articulo por ejemplo, a exportar a excel guarda el valor 3223, lo cual no es correcto ya que esta referencia pertenece a otro arículo. Este ejemplo este fallo no lo tiene en cuenta
Por Anónimo - Fecha: 2006/03/15 03:23 AM
este ejempo muy interesante
Por Anónimo - Fecha: 2006/03/29 02:18 PM
si el objeto que tenemos en el datagrid es un dataview......y queremos mandar a Excel solo las filas que muestra el datagrid (no todas las filas del dataview...porque para llegar a datagrid, llega filtrado).

Gracias.
Por Anónimo - Fecha: 2006/05/17 03:57 PM
Excelente aplicación
estoy empezando en esto de la programación y el visual basic.net, es uno
de los lenguajes que me han llamado la atención, junto al C#.net y el Java
pero este visual basic si que me ha sosrprendido,
Gracias por el ejemplo
Por Anónimo - Fecha: 2006/05/18 05:54 PM
Muy bueno tu ejemplo, pero lo quize aplicar en un proyecto aspx, pero no pude hacerlo, aca en la empresa hicieron un codigo basado en html para exportar a excell, pero quisiera hacerlo igual que tu ejemplo, he probado pero la libreria Microsoft.Office.Interop no esta disponible en asp .net, espero me puedas ayudar mi msn es javica18@hotmail.com o javica18@gmail.com gracias
Por Anónimo - Fecha: 2006/06/01 05:40 AM
Con Office 2003 no me funciona, cuando llega a la linea

Dim Wb As Excel.Workbook = Exc.ActiveWorkbook

Exc.ActiveWorkbook es Nothing, ¿Alguien sabe como se puede solucionar?
Por Anónimo - Fecha: 2006/06/26 12:32 PM
Hola.
Tengo rpobleams con la linea:
Exc.Workbooks.OpenText(pFileName, , , ,Excel.XlTextQualifier.xlTextQualifierNone, , True)
y ademas se me dañó el Office, especialmete Excel cuando lo abro me sale un error de compilación y alude a WorrkBook. Le agradeceria mucho a alguien que me saque de este apuro
Por Anónimo - Fecha: 2006/07/06 08:10 PM
lo voy a probaro por que yo necesito mucho esta herramienta y pues creo que si va a funcionar
Por royrojas - Fecha: 2006/09/20 12:23 PM
para poder usarlo con office xp o superior deben usar las librerias que se suministran en el ejemplo.
Por royrojas - Fecha: 2006/09/20 12:26 PM
habria que revisar si los problemas que reportan son de seguridad, ya que este ejemplo ha sido probadoen muchos sistemas que se utilizan actualmente.

Este ejemplo no deberia dañar ninguna funcionalidad del Office, no es posible ya que no altera ninguna configuracion interna, solamente lo invoca a la hora de mostrar los reportes.
Por Anónimo - Fecha: 2006/09/23 01:39 PM
Quisera saber como hacer, usando un formulario colocar los datos de los cuadro de texto en las hojas de excel uno debajo de otro sin necesidad de hacer lo siguiente range("a1").value=textbox1.text
Por Anónimo - Fecha: 2006/11/16 05:05 PM
Muy bueno tu ejemplo, pero en caso de que quisiera exportar datos a varios worksheets como lo haria??. Yo lo hice pero abriendo varios excel.application y despues el contenido de los worksheets cortandolos y luego pegandolos. E tratado de ver otra forma, ya que esta no la veo optima. Me podrias ayudar?
Por Anónimo - Fecha: 2006/11/22 05:38 AM
Solo muestra las 65536 primeras filas, si el dataset tiene mas no lo muestra entero, como se podría hacer para que no haya limite de filas
Por Anónimo - Fecha: 2006/12/15 02:36 PM
es muy buen ejemplo . de verdad me sirvio de mucho.. les recomiendo q ejecuten el ejemplo y luego lo analizen.. es mejor q ponerse a copiar codigo.... lo van aentender mejor...
Por Anónimo - Fecha: 2006/12/19 02:51 PM
no me funciona el excel 2003 me salen errores que no encuentra el archivo Configuración.xls y me dice que tampoco encuentra otros archivos mas
Por Anónimo - Fecha: 2007/01/08 02:22 PM
FALTO COLOCAR LAS REFERENCIAS DE LAS BIBLIOTECAS A USAR O IMPORTAR... A MI ME DA ERROR Y NO HALLO COMO LLAMAR A LA BIBLIOTECA NI A QUE HACER REFERENCIA... TOMAR EN CUENTA ESTO PARA PROXIMA ENTREGA!
Por Anónimo - Fecha: 2007/01/14 11:23 AM
ESTA MUY BUENO ESTE EJEMPLO, PERO NO FUNCIONA CON EL DATASET, DESCARGUE EL FICHERO LO CAMBIE POR EL QUE TIENES AQUI, Y AUN ASI NO FUNCIONA, NO SE PERMITE
dt = CType(Me.dgDatos.DataSource, DataSet).Tables(0)
Por Anónimo - Fecha: 2007/02/03 10:51 PM
se puede crear y manipular macros en excell desde vb .net??? si alguien me puede ayudar con eso, lo agradeceria mucho
Por Anónimo - Fecha: 2007/02/13 09:47 AM
En vb.net 2.0 no me funciona. Sabe alguien como hacer para que funcione?
Por Anónimo - Fecha: 2007/03/29 06:44 PM
esta bueno pero como lo uso en office 2007 y salen errores en docuemnts.slsx,and.xlsx,y otros mas ayudenme porfavor respondan lo necesito urgentemente
Por Anónimo - Fecha: 2007/04/10 05:10 PM
Yo lo trabaje con Office 2007 y ya no me salen los errores, lo que hice fue, desactivar la linea ''File.Delete(pFileName) en la función TextToExcel y cree una variable nombre solicitando el nombre del archivo así:

Nombre = InputBox("Ingrese el nombre del archivo:", "Guardar Archivo", "C:\")
If Nombre <> "" Then
Exc.ActiveWorkbook.SaveAs(Nombre, Excel.XlTextQualifier.xlTextQualifierNone - 1)
End If

Y la linea p.Start("Excel.exe", Nombre) queda así.

Espero les funcione y muchas gracias por el código anterior, mi correo es c.mesa@primocel.com.co......
Por Anónimo - Fecha: 2007/05/24 06:20 PM
El exportar a Excel ya me quedo. Lo agradezco. Mi inquietud en este momento es como puedo manipular el color de las celdas.
Es decir, si en mi Grid tengo un color particular por cada renglón, como puedo lograr rellenar el mismo color de celda al exportar los registros a Excel.

Gracias.
Por Anónimo - Fecha: 2007/05/29 09:28 PM
buen día!
mi nombre es nohemi y soy nueva en el mundo de la programación
busco como exportar un datagrid a excel.lenguaje c# framework 1.1
alguien me puede dar un tip para realizar esta aplicación web.
muchas gracias, saludos y hasta pronto
nlayja@hotmail.com
Por Anónimo - Fecha: 2007/07/04 12:40 AM
hola, lo estuve probando, es bueno, pero cuando lo ejecuto, me sale un aserie de mensajes de ruta, que al final no sale nada, pero buscando en el archivo temp se encuentra ahi, como hago para poder mostrarlo sin necesidad de estar buscandolo; despues de todo ya es un avance.
Por Anónimo - Fecha: 2007/08/11 09:16 PM
Hola, excelente ejemplo, lo descargue y ejecute tal cual, pero al ejecutarlo me sale un error que dice:

Error de QueryInterface para la interfaz Microsoft.Office.Interop.Excel.Range.

Me pueden ayudar? Gracias
Por Anónimo - Fecha: 2007/10/03 07:43 PM
trabajar reporteando en excel es mejor y mas presentable
Por Anónimo - Fecha: 2007/10/06 09:44 PM
tu ejemplo es bueno pero solo me pasa formatos automaticos que pasa si yo le he dado un formato qu yo cree con diferentes colores de celdas como lo paso a excel
Por Anónimo - Fecha: 2007/11/08 08:43 AM
muy bueno el ejemplo.. me ayudo para traspasar archivos *DBf a exel desde :net.. gracias..
jaimealex@gmail.com
Por Anónimo - Fecha: 2007/11/22 04:03 PM
Pesimo, para principiantes
Por Anónimo - Fecha: 2008/01/08 11:06 AM
hey muy bueno el ejemplo, pero que pasa si del datagrid yo cambio los datos de una columna, como hago para que a excel me pase lo que tiene el grid actualmente y no el dataset que se cargo al principio, gracias, mi correo es usugas@hotmail.com
Por Anónimo - Fecha: 2008/01/26 08:56 PM
Es bueno.
no ayuda a resolver muchos problemas en los diseños de sistemas
gracias..
Por Anónimo - Fecha: 2008/02/18 05:17 PM
Lo pase el programa a C#, donde el equivalente de la funcion
Exc.ActiveWorkbook.SaveAs(pFileName, Excel.XlTextQualifier.xlTextQualifierNone - 1)

seria :
Exc.ActiveWorkbook.SaveAs(pFileName, Microsoft.Office.Interop.Excel.XlTextQualifier.xlTextQualifierNone - 1, null, null, false, null,
Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, null, null, null, null, null);

cuando lo ejecuto en una maquina donde esta instalado Office 2003 no tengo ningun problema, pero cuando lo ejecuto en una maquina que esta instalado Office 2007, la ejecucion se queda en esta linea de codigo y no continua. al parecer esta buscando un archivo temporal que debe tener extension xlsx, el cual no lo encuentra y por eso no continua
Por Anónimo - Fecha: 2008/03/14 02:33 PM
shuaman@delvalle.com.pe
hmse_21@hotmail.com
Genera un reporte en excel con Columnas dinamicas

''Forma de Exportar a excel a partir de un Data Set espero que les pueda servir.
''se instancia la variable XLS de esta forma
Private xls As Microsoft.Office.Interop.Excel.Application
''O de esta forma
Private xls as Excel.Application

With xls
''.Visible = True
.Workbooks.Add()
.Cells(2, 3).Value = "Gastos Directos " & Me.CboMes.Text & " Del " & Me.DTP_ANIO.Text & " " & Me.cboArea.Text & " Dolares"
.Cells(2, 3).Font.Bold = 1
''.Cells(2, 1).Value = Me.cboArea.Text
'' Dim Propiedad() As PropertyInfo = objEntOrden.GetType.GetProperties()

.Cells(4, 1).value = "Rubro"
.Cells(4, 2).value = "Descripción"
.Cells(4, 1).Select()
''llenar el fondo de gris
With .Selection.Interior
.ColorIndex = 15
End With
.Cells(4, 2).Select()
With .Selection.Interior
.ColorIndex = 15
End With
.Cells(4, 1).Font.Bold = 1
.Cells(4, 2).Font.Bold = 1
.Cells(5, 2).Select()
With .Selection.Interior
.ColorIndex = 15
End With

.Cells(5, 1).Select()
With .Selection.Interior
.ColorIndex = 15
End With

For i = 0 To DsAREA_CCOSTO.Tables(0).Rows.Count - 1
.Cells(4, i + 3).value = DsAREA_CCOSTO.Tables(0).Rows.Item(i).Item("DESCRIPCIONCCOSTO").ToString.Trim
.Cells(4, i + 3).Select()
With .Selection.Interior
.ColorIndex = 15
End With
.Cells(5, i + 3).value = DsAREA_CCOSTO.Tables(0).Rows.Item(i).Item("Centro_Costo").ToString.Trim
.Cells(4, i + 3).Font.Bold = 1
.Cells(4, i + 3).Font.Size = 7
.Cells(5, i + 3).Font.Bold = 1
.Cells(5, i + 3).Font.Size = 7
.Cells(5, i + 3).Select()
With .Selection.Interior
.ColorIndex = 15
End With
Next
.Cells(4, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).value = "TOTAL"
.Cells(4, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Select()
With .Selection.Interior
.ColorIndex = 15
End With
.Cells(4, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Font.Bold = 1
.Cells(4, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Font.Size = 7
.Cells(5, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Font.Size = 7
.Cells(5, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).VALUE = Me.cboArea.Text
.Cells(5, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Font.Bold = 1
.Cells(5, (DsAREA_CCOSTO.Tables(0).Rows.Count) + 3).Select()
With .Selection.Interior
.ColorIndex = 15
End With
Dim F As Integer = 6
totalarea = DsAREA_CCOSTO.Tables(0).Rows.Count
For i = 0 To DsGatoDirecto.Tables(0).Rows.Count - 1
.Cells(F, 1).Value
Por Anónimo - Fecha: 2008/05/08 07:41 AM
Genial. Es un muy buen ejemplo.
Gracias.
Kesse (Tgna)
Por Anónimo - Fecha: 2008/06/12 05:33 PM
MUCHISIMAS GRACIAS!!! ERA LO QUE ESTABA NECESITANDO!!!!! MIL GRACIAS!!!!
Por Anónimo - Fecha: 2008/09/15 05:34 PM
soy nuevo en esto me pide unas refrenecias
Por Anónimo - Fecha: 2008/10/18 08:39 PM
OLA, NECESITO SABER COMO CAMBIAR EL FORMATO DE EXCELL 2003 A A LA VERSION 2007,
AGRADESCO MUCHO AL QUIEN ME PUEDA AYUDAR
Por Anónimo - Fecha: 2008/10/23 12:44 PM
Gracias me ha sido de mucha ayuda.
Por Anónimo - Fecha: 2010/03/25 10:16 AM
Muy buena tu aplicacíón, es lo que necesitaba para mi programa, aunque me está dando algunos problemas.
Por Anónimo - Fecha: 2010/05/26 08:42 AM
ni asi pasare mi examen jjejejeje
grax
:)
Por Anónimo - Fecha: 2010/06/21 01:54 PM
Gracias Man, no solo me ayudaste a pasar datos a excel, sino que ahora entiendo un poco mas el uso de clases, no creo que haya un mejor ejemplo.
Por Anónimo - Fecha: 2010/08/09 11:58 AM
la verdad no pude descargar el ejemplo pero me sirviria de mucha ayuda si me lo mandaras te dejo mi correo ale_246gar@hotmail.com
como mandar los datos de un datagrid a excel gracias te lo agradesco
Por Anónimo - Fecha: 2010/09/02 11:31 AM
use este ejemplo y funciona perfecto escepto por que no me respetolos seros a la izquierda de mi columna, alguien me puede orientar de ¿Cómo puedo hacerlo?
columna5 = 0001 y me pone 1 requiero los seros a la izquierda y gracias de antemano
Por Anónimo - Fecha: 2010/09/02 11:32 AM
por cierto no mencione que uso un datatable para manipular mis datos y esportarl,o a excel
Por Anónimo - Fecha: 2010/10/21 11:04 AM
Mis respetos amigo, el que dio respuesta a los erres de los rchivos temp y documents.xls agregando el input, ya me salio, que gusto.. saludos
Por royrojas - Fecha: 2010/11/29 05:52 PM
pronto tendremos más ejemplos de reporteadores en excel
Por Anónimo - Fecha: 2011/03/10 07:16 PM
Muy bueno pero sabes lo intente implementar en ASP.NET y todo perfecto pero se me cae en la instruccion "Dim Exc As Excel.Application = New Excel.Application" me dice q no hay acceso, le agradezco a quien sea un poco de ayuda correo j84_rodriguez@yahoo.com Grax y muy buen aporte.
Por Anónimo - Fecha: 2011/03/10 07:17 PM
Muy bueno pero sabes lo intente implementar en ASP.NET y todo perfecto pero se me cae en la instruccion "Dim Exc As Excel.Application = New Excel.Application" me dice q no hay acceso, le agradezco a quien sea un poco de ayuda correo j84_rodriguez@yahoo.com Grax y muy buen aporte.
Por Anónimo - Fecha: 2011/03/25 03:03 PM
que tal sabes como puedo cargar mis datos a una plantilla de excel.. que la tengo hecha y solo quiero agregar los datos...
Por Anónimo - Fecha: 2011/04/20 09:02 AM
muy buena el codigo fuente , me sirvio bastante gracias por el aporte.
Por Anónimo - Fecha: 2011/07/28 12:41 PM
porque no funciona en visual basic 6, necesito que funciones, ayuda forvis informes sobre el codigo ok
,.ayuda expertos ok
Por Anónimo - Fecha: 2011/08/05 11:35 AM
josuecastillo@live.com

Yo ejecute el ejemplo en vb2k8 y no me dio ningun problema. Por otro lado, se debe validar (tambien) cuando un campo de tipo texto trae consigo el valor de la tecla {ENTER}, a juzgar por la forma en la que esta escrito el codigo, esto asumira que estas insertando una nueva fila.

Por ultimo, la mejor manera de entender y comprender el codigo es ejecutandolo paso a paso...
Por Anónimo - Fecha: 2011/10/18 12:25 PM
disculpa no funciona este codigo, necesitaba uno donde se pueda exportar los datos(o base de datos mostrado en datagrid) al momento de ver una fecha y solo esa fecha q lo guarde en excel porq son varios registro de diferentes fechas,,, pero no funciona :(
Por Anónimo - Fecha: 2012/02/07 01:28 PM
Hola amigo en mi caso me genera el siguiente error, alguna idea

:

El archivo que intenta abrir, 'tmpC07A', tiene otro formato que el especificado por la extensión de archivo. Compruebe que el archivo no está dañado y procede de un origen de confianza antes de abrirlo. ¿Desea abrir el archivo ahora?
Por Anónimo - Fecha: 2012/02/07 02:36 PM
Solución encontrada:
http://www.codepoint.es/archive/2010/12/03/mensaje-quote-se-ha-detectado-que-quote-fichero-csv-quote-es-un-archivo-sylk-pero-no-se-puede-cargar-quote-al-abrir-con-ms-excel-un-fichero-csv.aspx
Por Anónimo - Fecha: 2012/04/11 10:29 AM
muy bueno!!! muchas gracias por compartirlo! lo unico que tengo problemas con la cabecera del datagrid ya qu eno me muestra los nombres de las columnas. ¿Alguien sabe a qué se debe? Muchas gracias!!!! =)
Por Anónimo - Fecha: 2012/04/26 07:19 AM
Your story was really informative, thnaks!
Por Anónimo - Fecha: 2012/04/27 08:22 AM
TgVlYV , [url=http://kioykgfdbbxg.com/]kioykgfdbbxg[/url], [link=http://lfziwuchsfas.com/]lfziwuchsfas[/link], http://jwvrmzphngoe.com/
Por Anónimo - Fecha: 2012/04/29 01:15 AM
IShVO7 , [url=http://imjkxtrxwlgx.com/]imjkxtrxwlgx[/url], [link=http://rrvotqpkxlnu.com/]rrvotqpkxlnu[/link], http://nfthdjeurnbs.com/
Por Anónimo - Fecha: 2015/12/17 01:45 PM
You get a lot of respect from me for writing these helpful arecslti.
Por Anónimo - Fecha: 2015/12/19 02:46 AM
Ah yes, nicely put, evyreone. http://vpkmtar.com [url=http://iodzjgtsa.com]iodzjgtsa[/url] [link=http://mlzjcbeys.com]mlzjcbeys[/link]
Por Anónimo - Fecha: 2015/12/20 02:20 PM
Reading posts like this make surfing such a plsrauee http://kkjhortvgq.com [url=http://qzmdiatp.com]qzmdiatp[/url] [link=http://kammtqmcy.com]kammtqmcy[/link]
Ingrese su Comentario
Comentario
Para poder votar debe estar registrado en DotNetcr.com
Solo queda registrado el primer voto enviado
Voto


Últimos Recursos
ricardo leppe t
pedrojavier
CALIN
willipinru
richard
ragomez
PER 238
MEX 236
CRI 188
COL 118
ESP 105
ARG 88