Fila de un DataGrid a otro DataGrid

Tengo un datagrid1 que lleno con un recordset con consultas desde un dato ingresado en un textbox. El tema es que quiero marcar una fila cualquiera del datagrid1 que me trajo con la consulta y copiar esa fila a otro datagrid2 por medio de un commandbutton y así con todas las filas que desee para luego poder exportar de ese datagrid 2 a excel (esto ya esta hecho, solo que no se como llenar el datagrid2). Espero puedan ayudarme. Programo con VB6.

1 respuesta

Respuesta
1
Hace mucho que no entraba a esta página la tenia un poco olvidada.
Con respecto a tu pregunta, te sugiero que crees un RecordSet falso es como si creáramos una tabla de base de datos falsa te doy un ejemplo:
' Primero creamos las variables que dejaremos como globales:
Dim TCol1 As String ' Con esta tomaremos el valor de la primera columna del DataGrid1
Dim TCol2 As String ' Con esta tomaremos el valor de la segunda columna del DataGrid1
Dim FalseR As ADODB.Recordset ' Declaramos el recordSet Falso
' Luego en el evento Load del formulario (igual puedes crear una funcion para dejarlo separado, pero para el ejemplo esta bien) creamos lo que es la tabla:
Private Sub Form_Load()
Set FalseR = New ADODB.Recordset 'Creamos el RecordSet
With FalseR
    .Fields.Append "Codigo", adVarChar, 8  
    .Fields.Append "Articulo", adVarChar, 100
   ' La primera columna que se creo es con nombre CÓDIGO y ua longitud de 8, la segunda ARTICULO con una longitud de 100 las dos del tipo varChar
' Siempre que uses este metodo y luego quieras mostrar los datos en un dataGrid trata de darle a las columnas el nombre con el que quieres que se vea.
End With
FalseR.Open ' Abrimos el RecordSet
End Sub
' Luego en el evento Click del DataGrid1:
Private Sub DataGrid1_Click()
TCol1 = DataGrid1.Columns(0).Value 'Entregamos el valor de la primera columna
TCol2 = DataGrid1.Columns(1).Value 'Entregamos el valor de la segunda columna
End Sub
' Y por ultimo en el evento Click del boton:
Private Sub Command3_Click()
With FalseR  ' Simplemente llenamos la tabla.
    .AddNew
    .Fields(0).Value = TCol1
    .Fields(1).Value = TCol2
    .Update
End With
If Not FalseR Is Nothing Then  ' Y mientras el recordSet no este vacio:
   Set DataGrid2.DataSource = FalseR 'Llenamos el Datagrid2.
End If
'Ahora el proceso de este boton igualmente lo puedes hacer de forma directa en el evento click o DblClick del DataGrid1.
End Sub
Bueno eso es todo, espero quede clara mi explicación y que te sirva, cualquier duda me dices.
Bye.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas