DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
On Error GoTo Son
If Intersect(Target, [1:1]) Is Nothing Then Exit Sub
SonK = [A1].End(2).Column
SonS = [A65536].End(3).Row
If Target.Column <= SonK Then
Range(Cells(2, 1), Cells(SonS, SonK)).Sort Key1:=Cells(1, ActiveCell.Column), Order1:=2
End If
Target.Offset(1, 0).Select
Son:
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [1:1]) Is Nothing Then Exit Sub
SonK = [A1].End(2).Column
SonS = [A65536].End(3).Row
If Target.Column <= SonK Then
Range(Cells(2, 1), Cells(SonS, SonK)).Sort Key1:=Cells(1, ActiveCell.Column), Order1:=1
End If
Son:
End Sub
Sub b_stunu()
Range("A3:D1000").Select
Range("b3").Activate
Selection.Sort Key1:=Range("b3"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Sub b_stunu()
SonS = [A65536].End(3).Row - 1
Range("A3:D1000").Select
Range("b3").Activate
Selection.Sort Key1:=Range("b3"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=SonS, _
DataOption1:=xlSortNormal
End Sub
Sub b_stunu()
Range("A3:D1000").Select
Range("b3").Activate
Selection.Sort Key1:=Range("b3"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error GoTo Son
SonK = [A2].End(2).Column
SonS = [A65536].End(3).Row - 1
If Target.Column <= SonK Then
Range(Cells(3, 1), Cells(SonS, SonK)).Sort Key1:=Cells(1, Target.Column), Order1:=1
End If
[A1].Activate
Son:
End Sub
Sub Makro1()
[a3].Sort Key1:=Range("B:B"), Order1:=xlDescending, Key2:=Range("C:C") _
, Order2:=xlDescending, Key3:=Range("D:D")
End Sub
Neden bir sıralama için 3 adet program yazmak istiyorsunuz anlamakta güçlük çekiyorum.
Aşağıdaki kodları sayfanın kod bölümüne kopyalayın ve hangi sütunda çift tıklarsanız o sütuna göre 3. satırdan itibaren Küçükten Büyüğe sıralar.
Parametrik düşünmek her zaman daha iyidir.
Sub b_stunu()
Range("A3:D1000").Select
Range("b3").Activate
Selection.Sort Key1:=Range("b3"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Sub b_stunu()
Range("A3:D" & [A65536].End(3).Row - 1).Select
Range("b3").Activate
Selection.Sort Key1:=Range("b3"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Arkadaşlar yine bir sorum olacak;
yukarıdaki makro ile sıralama yaptığım sütunlarda şöyle bir formül ile başka bir dosyadan veri alıyorum;
=EĞER(EHATALIYSA(DÜŞEYARA(B4;'\\xx.xx.x.xxx\users\aaa\My Documents\Data\[31.01.08.xls]Sayfa1'!$A$1:$E$14;3;YANLIŞ));"---";DÜŞEYARA(B4;'\\xx.xx.x.xxx\users\aaa\My Documents\Data\[31.01.08.xls]Sayfa1'!$A$1:$E$14;3;YANLIŞ))
fakat formül sonucu "---" ise azalan sıralama yaptığımda bu hücreler listenin en başında yer alıyor.
Azalan sıralama yaptığımda bu verilerin listenin en altında yer alması için makroyu nasıl düzeltebilirim?