Acomodé el siguiente código
Private Sub Button1_Buscar_Numero_Remision_Modificar_Click()
If ActiveSheet.Name <> "REMISION_1" And ActiveSheet.Name <> "REMISION_2" Then Exit Sub
'
Set ho1 = Sheets("HISTORIAL_REMISIONES")
Me.ListBox1_Modificar_Remision.Clear
'Se filtran los nombres (Remitente o Destinataio o Numero Remision) en blanco o que inicien
'con numero o espacios en blanco
If Me.TextBox1_Numero_Remision_Modificar.Value = "" Then
MsgBox "Escriba el NUMERO de la REMISION a buscar"
Me.TextBox1_Numero_Remision_Modificar.SetFocus
Me.TextBox1_Numero_Remision_Modificar.SelStart = 0
Me.TextBox1_Numero_Remision_Modificar.SelLength = Len(Me.TextBox1_Numero_Remision_Modificar.Text)
Exit Sub
End If
'
If Not (Mid(TextBox1_Numero_Remision_Modificar.Value, 1, 1) Like "[0-9]") Then
MsgBox "NÚMERO R E M I S I O N I N V Á L I D A" & vbNewLine & " " & vbNewLine & " (Sin Letras ni Espacios en Blanco al inicio)"
Me.TextBox1_Numero_Remision_Modificar.SetFocus
Me.TextBox1_Numero_Remision_Modificar.SelStart = 0
Me.TextBox1_Numero_Remision_Modificar.SelLength = Len(Me.TextBox1_Numero_Remision_Modificar.Text)
Exit Sub
End If
'Se llena el lisbtox
Application.ScreenUpdating = False
ho1.Unprotect "1"
On Error Resume Next 'en caso que encuentre campos vacios o errores (¡VALOR!, N#A)
'en el nombre Remitente,los obvie y continue el bucle
items = ho1.Range("A" & Rows.Count).End(xlUp).Row
For i = 5 To items
If WorksheetFunction.Trim(ho1.Cells(i, 1).Value) Like "*" & _
WorksheetFunction.Trim(Me.TextBox1_Numero_Remision_Modificar.Value) & "*" Then
Me.ListBox1_Modificar_Remision.AddItem ho1.Cells(i, 1)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 1) = ho1.Cells(i, 2)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 2) = ho1.Cells(i, 4)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 3) = ho1.Cells(i, 5)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 4) = ho1.Cells(i, 3)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 5) = ho1.Cells(i, 7)
Me.ListBox1_Modificar_Remision.List(Me.ListBox1_Modificar_Remision.ListCount - 1, 6) = Format((ho1.Cells(i, 57)), "#,###,###")
End If
Next i
'se envia el foco o se resalta todo el texbox o caja de busqueda(se reescribe sobre el Remitente buscado)
Me.TextBox1_Numero_Remision_Modificar.SetFocus
Me.TextBox1_Numero_Remision_Modificar.SelStart = 0
Me.TextBox1_Numero_Remision_Modificar.SelLength = Len(Me.TextBox1_Numero_Remision_Modificar.Text)
ho1.Protect "1"
Application.ScreenUpdating = True
End Sub
En el valor del flete tenías otra variable para la fila:
Tenías fila_remision_duplicado y debe ser fila_remision_modificar
Valor_Flete = Format(ho1.Cells(fila_remision_modificar, 57).Value, "#,###,###")
.
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
.
Avísame cualquier duda
.
Dante aveces me complico detectar un error cuando no sale la opción depurar. alguna sugerencia ? - Adriel Ortiz Mangia
Ejecuta la macro paso a paso - Dante Amor
Gracias Dante - Adriel Ortiz Mangia