Citiraj:
Autor Kruno M
Eo ga:
Code:
Sub Sort()
'
' Sort Macro
' Macro recorded 07.03.2014 by K
'
' Keyboard Shortcut: Ctrl+k
'
Range("A2:D218").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
|
OK, evo ja sam riješio (ovo je riješeno pomoću gumba, a ti sebi implementiraj kako god želiš) - Ovo je pojednostavljena verzija unutar jednog sheeta, a ti sad sebi gradi tako da ga samo pozicioniraš da iz drugog sheeta provjerava u prvi, te naravno da zadovoljava uvjet koji tebi treba:
Code:
Private Sub CommandButton1_Click()
Dim i As Integer
i = 1
Cells(1, 2).Select
Do While Cells(i, 1) <> ""
If Cells(i, 1) > 0 Then
ActiveCell = Cells(i, 1)
i = i + 1
ActiveCell.Offset(1, 0).Select
Else
i = i + 1
End If
Loop
End Sub
VBA radi sljedeće:
Provjerava u prvoj koloni od prve vrijednosti (znači kolona A) da li je vrijednost veća od 0
Kolona sadrži:
1
2
-1
-2
3
4
-4
-3
-4
5
6
7
-5
-6
8
9
-7
-8
-9
Ako je veća od nula, prepiši pa se pomakni dalje, ako nije, samo povećaj i
Rezultat je da dobijem (u drugoj koloni (B) samo pozitivne brojeve jedan ispod drugog):
1
2
3
4
5
6
7
8
9