Попробуйте это. Второе условие используется для улавливания события, когда наименьшее число является первым
int[] elements = {-5, -4, 0, 2, 10, 3, -3};
int smallest = Integer.MAX_VALUE;
int secondSmallest = Integer.MAX_VALUE;
for (int i = 0; i < elements.length; i++) {
if(elements[i]==smallest){
secondSmallest=smallest;
} else if (elements[i] < smallest) {
secondSmallest = smallest;
smallest = elements[i];
} else if (elements[i] < secondSmallest) {
secondSmallest = elements[i];
}
}
UPD by @Axel
int[] elements = {-5, -4, 0, 2, 10, 3, -3};
int smallest = Integer.MAX_VALUE;
int secondSmallest = Integer.MAX_VALUE;
for (int i = 0; i < elements.length; i++) {
if (elements[i] < smallest) {
secondSmallest = smallest;
smallest = elements[i];
} else if (elements[i] < secondSmallest) {
secondSmallest = elements[i];
}
}
Возможно:
Sub Set_Visible_Invisible()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Shapes("btn_S2_Pasive").Visible = False
ws.Shapes("btn_S2_Active").Visible = True
Next ws
End Sub
Ключевой вопрос не в том, чтобы дважды указать рабочий лист.