Autor
|
Tema: Eliminar y reemplazar registros en Array (Leído 3,865 veces)
|
luis456
Desconectado
Mensajes: 551
|
Quiero hacer un bucle que mire los objetos del array uno a uno y si se pase del rango lo elimine pero que sobreescriva con algun numero dentro del rango 00 /99 en ese espacio y asi consecutivamente ( siempre numerico) este codigo lo encontre trasteando aca mismo :)pero no logro hacer que funcione que hago mal ? Dim Result3 as integer Dim i, j As Integer 'Contadores For i = 1 To "cantidad de objetos en el array" If Result3(i) = 99 Then For j = 1 To "objetos array - i" If not (i+1) > 12 (i) = Result3(i+1) else: Result3(i) = "" End If Next j End If Next i ListBox3.Items.Add(CStr(Result3(X)))
Saludos Luis [MOD]Para la próxima inserta correctamente las etiquetas de código.
|
|
« Última modificación: 15 Enero 2014, 12:37 pm por kub0x »
|
En línea
|
Que tu sabiduria no sea motivo de Humillacion para los demas
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
¿ Que te dije de usar LINQ ? ¿algo como esto te sirve?: Public Class Form1 ReadOnly MAX As Integer = 100 Public Sub Test() Handles MyBase.Shown Dim Rand As New Random Dim result1 As Integer() = {1, 100, 2, 3, 4} Dim result2 As Integer() = {5, 500, 6, 6, 4} Dim result3 As Integer() = {7, 8, 9, 10, 99} ' Concateno, y... ' Elimino duplicados, y... ' Selecciono los números inferiores a MAX, y... ' Convierto los números mayores a MAX a números aleatorios entre 0 y MAX. Dim Result As IEnumerable(Of Integer) = (result1.Concat(result2).Concat(result3)). Distinct. Select(Function(Value As Integer) Return If(Value < MAX, Value, Rand.Next(0, MAX)) End Function) ' Result = 1, RANDOM, 2, 3, 4, 5, RANDOM, 6, 7, 8, 9, 10, 99 ListBox1.Items.AddRange(Result.Cast(Of Object).ToArray) End Sub End Class
Saludos!
|
|
« Última modificación: 15 Enero 2014, 18:28 pm por Eleкtro »
|
En línea
|
|
|
|
luis456
Desconectado
Mensajes: 551
|
¿ Que te dije de usar LINQ ? ¿algo como esto te sirve?: Public Class Form1 ReadOnly MAX As Integer = 100 Public Sub Test() Handles MyBase.Shown Dim Rand As New Random Dim result1 As Integer() = {1, 100, 2, 3, 4} Dim result2 As Integer() = {5, 500, 6, 6, 4} Dim result3 As Integer() = {7, 8, 9, 10, 99} ' Concateno, y... ' Elimino duplicados, y... ' Selecciono los números inferiores a MAX, y... ' Convierto los números mayores a MAX a números aleatorios entre 0 y MAX. Dim Result As IEnumerable(Of Integer) = (result1.Concat(result2).Concat(result3)). Distinct. Select(Function(Value As Integer) Return If(Value < MAX, Value, Rand.Next(0, MAX)) End Function) ' Result = 1, RANDOM, 2, 3, 4, 5, RANDOM, 6, 7, 8, 9, 10, 99 ListBox1.Items.AddRange(Result.Cast(Of Object).ToArray) End Sub End Class
Saludos! Gracias como siempre elektro lo estoy probando y me da este error en ListBox1.Items.AddRange(Result.Cast(Of Object).ToArray) No se puede modificar la colección Items cuando está establecida la propiedad DataSource. ????????????????? SOLUCIONADO CUESTION DE HERENCIA Luis SOLUCIONADO CUESTION DE HERENCIA
|
|
« Última modificación: 15 Enero 2014, 20:30 pm por luis456 »
|
En línea
|
Que tu sabiduria no sea motivo de Humillacion para los demas
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
No se puede modificar la colección Items cuando está establecida la propiedad DataSource. ?????????????????
Si estás usando un DataSource debes hacer los cambios en el objeto source, no los puedes hacer diréctamente en el ListBox ...a menos que vuelvas la propiedad a valor nulo. Compila esto en un nuevo proyecto y fíjate lo que sucede en cada pausa: Public Class Form1 Dim Source As Integer() = {1, 2, 3} Private Sub Form1_Load() Handles MyBase.Shown Dim LB As New ListBox Me.Controls.Add(LB) LB.DataSource = Source Threading.Thread.Sleep(2000) : Application.DoEvents() Source = {1, 2, 3, 4, 5, 6} LB.DataSource = Source Threading.Thread.Sleep(2000) : Application.DoEvents() LB.DataSource = Nothing LB.Items.Add(99) Threading.Thread.Sleep(2000) : Application.DoEvents() End Sub End Class
saludos
|
|
« Última modificación: 15 Enero 2014, 20:43 pm por Eleкtro »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Eliminar registros repetidos dejando 1
Bases de Datos
|
Shell Root
|
2
|
3,500
|
20 Septiembre 2013, 05:11 am
por Shell Root
|
|
|
¿Cómo reemplazar caracteres en una cadena de un array?
Programación C/C++
|
Juancho25
|
1
|
2,773
|
26 Diciembre 2013, 14:07 pm
por ivancea96
|
|
|
eliminar registros con ceros
.NET (C#, VB.NET, ASP)
|
luis456
|
5
|
3,860
|
12 Noviembre 2014, 12:35 pm
por luis456
|
|
|
Eliminar las posiciones pares de un array y comprimir el array
Java
|
sevedeboa
|
8
|
15,399
|
26 Enero 2015, 15:52 pm
por sevedeboa
|
|
|
Nesecito eliminar registros negativos y cero
.NET (C#, VB.NET, ASP)
|
luis456
|
6
|
4,107
|
14 Febrero 2015, 11:39 am
por luis456
|
|