Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - luis456

#161
Bueno consegui solucionar uno de los problemas :) y es eliminar del listbox los repetidos pero los completos o sea los que tienen 10 registros  ;( alguien se anima a mejorarlo para que no me queden a si

02 03 05
01 02 03 04 05
02 05 06 07 0 9

y me deje solo los registros completos  ?


Código (vbnet) [Seleccionar]
Public Class Form1

    ' eliminar registros iguales en  " Lnumbers " lo solucione quitandolos del listxbo
    ' eliminar registros MENORES a MAX
    ' En este codigo deberia quedar un solo registro de los cuatro

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim col1 As IEnumerable(Of Integer) = {1, 5, 6, 7, 8, 9, 10, 11}
        Dim col2 As IEnumerable(Of Integer) = {1, 5, 6, 7, 8, 9, 10, 11}
        Dim col3 As IEnumerable(Of Integer) = {1, 2, 8, 6, 9}
        Dim col4 As IEnumerable(Of Integer) = {2, 2, 3}
        Dim MAX As Integer = 10


        Dim Lnumbers As List(Of IEnumerable(Of Integer)) = {col1, col2, col3, col4}.ToList


        For Each col As IEnumerable(Of Integer) In Lnumbers

            ListBox1.Items.Add(String.Join(", ", From value As Integer In col
                                                                      Select If(value.ToString.Length = 1I,
                                                                                value.ToString.Insert(0I, "0"c),
                                                                                value.ToString)))

        Next col
    End Sub


    '*****************************************preubas**********
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        ' Le pasa el Listbox a la función
        MsgBox(Eliminar(ListBox1), _
               MsgBoxStyle.Information, _
               "Elementos duplicados en el List ")
    End Sub
    Function Eliminar(ByVal LB As ListBox) As Int32
        Dim i As Int32
        Dim j As Int32
        Dim n As Int32

        ' Recorre los items ( copara empezando _
        'desde el primero , de abajo hacia arriba)
        For i = 0 To LB.Items.Count - 2
            For j = LB.Items.Count - 1 To i + 1 Step -1
                ' verifica si es el mismo
                If LB.Items(i).ToString = LB.Items(j).ToString Then
                    ' elimina el elemento indicando el índice
                    LB.Items.RemoveAt(j)
                    n += 1 'lleva la cuenta de los duplicados
                End If
            Next
        Next
        Return n ' retorna los eliminados
    End Function
End Class


los ejemplos  (los 100)  ;)  no me aclaran nada

Luis
#162
AAAAAAAAAAAAAAAAAA

TAMPOCO


Código (vbnet) [Seleccionar]
Dim products = Lnumbers

        Dim cat = From value In products _
                            Select value _
                            Distinct

        For Each n In cat

            ListBox2.Items.Add(String.Join(", ", From value As Integer In n
                                                                      Select If(value.ToString.Length = 1I,
                                                                                value.ToString.Insert(0I, "0"c),
                                                                                value.ToString)))
        Next

#163
Bueno creo que solo naci para las tuercas ;)

trato con los ejemplos que hay en las paginas de msdn que me pasaste pero aparte que no hablo chino jeje tengo que usar el traductor que habla como indio y me enredo mas y estos ejemplos estan orientados a bases de datos y mas me enrollo jejej.

Código (vbnet) [Seleccionar]
Public Class Form1

    ' eliminar registros iguales en  " Lnumbers "
    ' eliminar registros MENORES a MAX
    ' En este codigo deberia quedar un solo registro de los cuatro

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim col1 As IEnumerable(Of Integer) = {1, 5, 6, 7, 8, 9, 10, 11}
        Dim col2 As IEnumerable(Of Integer) = {1, 5, 6, 7, 8, 9, 10, 11}
        Dim col3 As IEnumerable(Of Integer) = {1, 2, 8, 6, 9}
        Dim col4 As IEnumerable(Of Integer) = {2, 2, 3}
        Dim MAX As Integer = 10


        Dim Lnumbers As List(Of IEnumerable(Of Integer)) = {col1, col2, col3, col4}.ToList


        For Each col As IEnumerable(Of Integer) In Lnumbers



            ListBox1.Items.Add(String.Join(", ", From value As Integer In col
                                                                      Select If(value.ToString.Length = 1I,
                                                                                value.ToString.Insert(0I, "0"c),
                                                                                value.ToString)))


        Next col

        '***********************aca me tranco

        Dim concatCol As IEnumerable(Of Integer) = Lnumbers
        Dim distinctCol As IEnumerable(Of Integer) = concatCol
        Dim selectCol As IEnumerable(Of Integer) = distinctCol.Select(Function(value As Integer)
                                                                          If value = MAX Then
                                                                              Return value
                                                                          Else

                                                                              Return value
                                                                          End If

                                                                      End Function)


        ListBox2.Items.AddRange(selectCol.Cast(Of Object).ToArray)

    End Sub

End Class

#164

"Sigo sin ver que lo hayas intentado ".

No es eso es que estoy pasando unas formulas jejej y he ido de pasada, no he tenido tiempo de miralo con detenimiento ahora estoy mas urgido de pasar esas formulas que tienen que ver con la pregunta pero primero acabare pasarlas :)

luis
#165
Cita de: Eleкtro en 27 Abril 2015, 16:37 PM
Una forma de hacerlo sería utilizando la clausura Where para evaluar si la colección contiene el mismo elemento más de una vez, otra forma sería utilizar la clausura Group By para agrupar por números y luego seleccionar el primer elemento de la agrupación (Enumerable.First) con la claúsura Select (evitando así duplicados).

Where Clause (Visual Basic) - MSDN
Group By Clause (Visual Basic) - MSDN

Saludos


Hola  corrigeme en algo. tendria que pasar el contenido del tesbox a una variable para poder hacer el filtrado ?

luis


#166
Hola a todos
bueno aca estoy de nuevo :) con mis rollos

no encuentro la manera de eliminar datos repetidos he puesto por todos lados pero no me filtra los registros repetidos se como hacerlo con variables pero como aca pongo todas las variables juntas en un testbox ;( me da ese fallo

01 02 03 04 05 06 07 08 09
01 02 03 04 05 06 07 08 09




Código (vbnet) [Seleccionar]
Dim Lnumbers As List(Of IEnumerable(Of Integer)) = { SM18, SM17, SM16, SM14....,}.Distinct.ToList


     For Each col As IEnumerable(Of Integer) In Lnumbers



           ListBox23.Items.Add(String.Join(", ", From value As Integer In col
                                                                     Select If(value.ToString.Length = 1I,
                                                                               value.ToString.Insert(0I, "0"c),
                                                                               value.ToString)))
       Next col




Luis
#167
Solucionado lo de mostrar con ceros  ;-) ;-) ;-) ;-) ;-)


Gracias elektro mis avances son pequeños, pero caminando es que se  hace el camino :)


Código (vbnet) [Seleccionar]
For Each col As IEnumerable(Of Integer) In Lnumbers

            ListBox23.Items.Add(String.Join(", ", From value As Integer In col
                                                                      Select If(value.ToString.Length = 1I,
                                                                                value.ToString.Insert(0I, "0"c),
                                                                                value.ToString)))
        Next col


Luis
#168
Perfecto funciona bien y si me disculpas te hare un par de preguntas sobre esto  :silbar:

hay alguna limitacion sobre la cantidad de variables que se puedan usar ?  ejemplo si quiero poner dos mil variables jejej ( pura curiosidad)

Código (vbnet) [Seleccionar]
Dim Lnumbers As List(Of IEnumerable(Of Integer)) = {col1, tgghLali9, ali4, ali5, ali6, ali7,....hasta dosmil o mas }.ToList   

y la otra que estoy buscando " estetica" 

como hago para que en ves de mostrame

1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19

pueda mostrar con ceros asi

01 02 03 04 05 06 07 08 09

11 12 13 14 15 16 17 18 19

estuve investigando con " format " pero no me entero ya que probando lo unico que hago es agregar ceros a todos los numeros incluidos los pares jejej

Luis





#169
 ;-) ;-) ;-) ;-) ;-) a si si se aprende , bien explicado profe , sabes que pasa a veces, que es como cuando le enseño mecanica a mi sobrino (mi profesion real ) es que asumo que como yo lo se , el deberia saberlo  o que es facil jejej y por eso  te agradezco tu esfuerzo en enseñarme bueno a a tratar ya que a burro viejo es dificil enseñar jejej


Luis   
#170
Cita de: Eleкtro en 22 Abril 2015, 12:48 PM
de acuerdo, dáme unos minutos para escribir... y ve preparándote para el "regaño", jeje...

lo sabia ,,lo sabia  :(