Sei sulla pagina 1di 6

Seccin de cdigos , trucos y ejemplos para visual basic

211 - Obtener el valor de una celda de un DataGrid


<Volver> - Anterior - Siguiente

Contenido

Ejemplo 1 Ejemplo 2 Enlaces relacionados

Ejemplo 1
Ejemplo simple para recuperar el valor de la celda seleccionada de un control Datagrid

El valor de la celda se visualiza en el caption del formulario, consultando la propiedad Col , Text y Row del DataGrid

Se necesita colocar un DataGrid1 Cdigo fuente en un formulario: Texto planoImprimir 1. Option Explicit 2. 3. 4. Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Int eger) 5. 'Muestra en el caption del fomulario _ 6. el valor de la celda seleccionada 7. Me.Caption = DataGrid1.Text & " Celda: " & CStr(DataGrid1.Row) & _ 8. " Columna: " & CStr(DataGrid1.Col) 9. End Sub 10. 11. Private Sub Form_Load() 12. Dim bd As String 13. 14. 15. 'Path de la base de datos 16. bd = App.Path & "\BIBLIO.MDB" 17. 18. 'Cadena de conexin 19. 20. Adodc1.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;" & _ 21. "Data Source=" & bd & ";" 22.

23. 'Cadena SQL 24. Adodc1.RecordSource = "SELECT * FROM Authors" 25. 26. 'Carga el Recordset en el datagrid 27. Set DataGrid1.DataSource = Adodc1 28. End Sub

Ejemplo 2
Ejemplo para obtener el valor de las celdas del Datagrid pero accedindolas en un bucle anidado. Es decir en el bucle principal se recorren todas las filas, y en el otro las columnas. Dentro del ForNext que recorre las columnas, se obtiene el valor de la celda mediante la coleccin CellValue del objeto Columns del Grid. Nota. El resultado se imprime y muestra en la ventana Inmediato del IDE de Visual basic.

Cdigo fuente ( Agregar al Form un DataGrid, un botn y la referencia de ADO ) Texto planoImprimir

1. Option Explicit 2. 3. ' \\ -- Recorrer datos de un DataGrid en un bucle 4. ' \\ -- Autor : Luciano Lodola -- www.recursosvisualbasic.com.ar 5. ' - -------------------------------------------------------------------------------6. 7. ' \\ -- Variables para la conexin 8. Private rs As ADODB.Recordset 9. Private cn As ADODB.Recordset 10. 11. ' ------------------------------------------------------------------------------12. ' \\ -- Botn que recorre el GRID 13. ' ------------------------------------------------------------------------------14. Private Sub Command1_Click() 15. 16. Dim i As Long ' -- Fila 17. Dim j As Long ' -- Columna 18. Dim sValue As String ' -- Valor de la celda 19. Dim sLine As String ' -- Valor de la linea ( La fila completa ) 20. 21. Screen.MousePointer = vbHourglass 22. 23. With DataGrid1 24. ' -- recorrer todas los registros del GRID 25. For i = 0 To .ApproxCount - 1 26. ' -- Recorrer las columnas 27. For j = 0 To .Columns.Count - 1 28. ' -- Obtener el valor de la celda actual 29. If Not IsNull(.Columns(j).CellValue(.GetBookmark(i))) Then 30. sValue = CStr(.Columns(j).CellValue(.GetBookmark(i))) 31. Else 32. sValue = "" 33. End If 34. ' -- Almacenar los datos de la fila 35. sLine = sLine & sValue & ";" 36. Next 37. ' -- Imprimir resultado 38. Debug.Print sLine 39. sValue = "" 40. sLine = "" 41. Next 42. End With 43. Screen.MousePointer = vbDefault 44. End Sub 45. ' ------------------------------------------------------------------------------46. ' \\ -- Inicio 47. ' -------------------------------------------------------------------------------

48. Private Sub Form_Load() 49. Dim bd As String 50. 51. ' -- Ruta de la base de datos 52. bd = "C:\Archivos de programa\Microsoft Visual Studio\VB98\BIBLIO.MDB" 53. 54. ' -- Crear conexin 55. Dim cn As New ADODB.Connection 56. Dim rs As New ADODB.Recordset 57. cn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & bd & "; " 58. 59. cn.CursorLocation = adUseClient 60. ' -- Ejecutar comando SQL ( seleccionar las primeras 100 filas ) 61. Set rs = cn.Execute("SELECT Top 150 * FROM Authors") 62. 63. ' -- Enlazar los datos al GRID 64. Set DataGrid1.DataSource = rs 65. End Sub 66. ' ------------------------------------------------------------------------------67. ' \\ -- Fin 68. ' ------------------------------------------------------------------------------69. Private Sub Form_Unload(Cancel As Integer) 70. ' -- Quitar conexin al Grid 71. Set DataGrid1.DataSource = Nothing 72. ' -- Descargar recordset 73. If Not rs Is Nothing Then 74. If rs.State = adStateOpen Then rs.Close 75. Set rs = Nothing 76. End If 77. ' -- Descargar conexin 78. If Not cn Is Nothing Then 79. If cn.State = adStateOpen Then cn.Close 80. Set cn = Nothing 81. End If 82. End Sub

Recursos vb - Enlaces relacionados


Datagrid - Ejemplos Ejemplos de bases de datos

Recursos .NET - Enlaces relacionados

DatagridView

Buscar en Recursos vb

Recursos visual basic - Buscar - Privacidad - Copyright 2005 - 2009 www.recursosvisualbasic.com.ar

Inicio Ejemplos vb Ocx - Activex Api vb Tutoriales - Manuales Cdigo fuente vb.net

Potrebbero piacerti anche