Visual Basic.NET - Restar items de 2 Datagridviews y mostrar el resultado en un 3er Datagridview

   
Vista:

Restar items de 2 Datagridviews y mostrar el resultado en un 3er Datagridview

Publicado por Alan (6 intervenciones) el 01/08/2014 05:24:09
Hola,

Estoy haciendo una pequeña aplicación que muestra 2 inventarios en diferentes fechas de un mismo almacén (Son 25 almacenes y más de 600 productos)

Ingresé los productos en desorden para ver cómo salían los datos al realizar la comparación, sin embargo no he podido o no sé lo suficiente como para poder hacer que se crucen los valores similares y realice la resta.

¿Podría alguien ayudarme cómo hacer para poder encontrar los productos similares y realizar la resta para hallar el consumo?

Se los agradezco.
PD: Adjunto imagen de el resultado.

Consulta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Restar items de 2 Datagridviews y mostrar el resultado en un 3er Datagridview

Publicado por Alan (6 intervenciones) el 02/08/2014 07:24:09
Bueno, realizando pruebas, pude hacerlo, sin embargo, ¿alguien sabrá cómo hacer para que el producto del Datagridview1 resaltado en amarillo que no figura en el DataGridview2, figure con "0" en el DataGridView3 ya que no tuvo consumo?

Adjunto código por si le pudiera servir a alguien e imagen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Dim fila1 As Integer = 0
        Dim fila2 As Integer = 0
        Dim fila3 As Integer = 0
        Dim consumo As Double = 0
        Try
            If CboAlmacenes.SelectedValue = CboAlmacenes2.SelectedValue Then
                If cboFecha.SelectedValue.ToString < cboFecha2.SelectedValue.ToString Then
 
                    For fila1 = 0 To DataGridView1.Rows.Count - 1
                        For fila2 = 0 To DataGridView2.Rows.Count - 1
 
                            If DataGridView1.Rows(fila1).Cells(2).Value = DataGridView2.Rows(fila2).Cells(2).Value Then
                                DataGridView3.Rows.Add()
                                DataGridView3.Rows(fila3).Cells(0).Value = Almacen
                                DataGridView3.Rows(fila3).Cells(1).Value = DataGridView1.Rows(fila1).Cells(2).Value
                                DataGridView3.Rows(fila3).Cells(2).Value = DataGridView1.Rows(fila1).Cells(3).Value
                                consumo = DataGridView1.Rows(fila1).Cells(4).Value - DataGridView2.Rows(fila2).Cells(4).Value
                                DataGridView3.Rows(fila3).Cells(3).Value = consumo.ToString("N3")
                                DataGridView3.Rows(fila3).Cells(4).Value = DataGridView1.Rows(fila1).Cells(5).Value
                                fila3 = fila3 + 1
                            End If
                        Next
                    Next
                    DataGridView3.ClearSelection()
                Else
                    MsgBox("Revisar las fechas de cálculo", MsgBoxStyle.Exclamation, "Error")
                    Exit Sub
                End If
            Else
                MsgBox("Los almacenes deben ser similares", MsgBoxStyle.Information, "Error")
                Exit Sub
            End If
        Catch
            MsgBox("Revise los datos ingresados. La cantidad de productos a comparar, no es igual en las 2 tablas anteriores.", MsgBoxStyle.Exclamation, "Advertencia")
        End Try



Consulta1

Se agradece.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar