Como detener la ejecución de un código
Hola experto, quisiera me pudieras orientar en que poner al siguiente código para que detuviera su ejecición cuando termina de realizar el acomodo de datos. Te muestro mi código:
Dim celdaINI, celdaFIN, valor, valor1 As String
Range("A1").Select
Do While ActiveCell.Value <> "$A$65536"
Do While ActiveCell.Value <> "N"
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "N" Then
celdaINI = ActiveCell.Address
valor = ActiveCell.Offset(0, 0).Address
valor1 = ActiveCell.Offset(0, 1).Address
ActiveCell.Offset(1, 0).Select
End If
Do While ActiveCell.Value <> "N"
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "N" Then
celdaFIN = ActiveCell.Offset(-1, 5).Address
Celda = ActiveCell.Offset(-1, 0).Address
Range(celdaINI, celdaFIN).Select
Selection.Sort Key1:=Range(valor), Order1:=xlDescending, Key2:=Range(valor1) _
, Order2:=xlDescending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
:=xlSortNormal
End If
Range(Celda).Select
Loop
ActiveCell.End(xlUp).Select
Como podrás ver es un código que me ordena datos por conjunto de datos, el problema es que cuando llega al último conjunto de datos, como no encuentra la letra "N", pues se traba y no se detiene por si solo, lo tengo que detener manualmente. Que me recomendarías insertarle para que funcione adecuadamente, el acomodo de datos lo hace muy bien, solo es ponerle un tipo freno o algo para que al llegar al ultimo conjunto de datos no se trabe.
Espero me puedas ayudar.
Saludos
Dim celdaINI, celdaFIN, valor, valor1 As String
Range("A1").Select
Do While ActiveCell.Value <> "$A$65536"
Do While ActiveCell.Value <> "N"
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "N" Then
celdaINI = ActiveCell.Address
valor = ActiveCell.Offset(0, 0).Address
valor1 = ActiveCell.Offset(0, 1).Address
ActiveCell.Offset(1, 0).Select
End If
Do While ActiveCell.Value <> "N"
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "N" Then
celdaFIN = ActiveCell.Offset(-1, 5).Address
Celda = ActiveCell.Offset(-1, 0).Address
Range(celdaINI, celdaFIN).Select
Selection.Sort Key1:=Range(valor), Order1:=xlDescending, Key2:=Range(valor1) _
, Order2:=xlDescending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
:=xlSortNormal
End If
Range(Celda).Select
Loop
ActiveCell.End(xlUp).Select
Como podrás ver es un código que me ordena datos por conjunto de datos, el problema es que cuando llega al último conjunto de datos, como no encuentra la letra "N", pues se traba y no se detiene por si solo, lo tengo que detener manualmente. Que me recomendarías insertarle para que funcione adecuadamente, el acomodo de datos lo hace muy bien, solo es ponerle un tipo freno o algo para que al llegar al ultimo conjunto de datos no se trabe.
Espero me puedas ayudar.
Saludos
2 respuestas
Respuesta de Carlos Serrano
Respuesta de el_canas
-1