• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

sıralama

Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
arkadaşlar yaklaşık 20000satrılık bi excel dosyasında 50 tane kod var ve bu kodları kendi içerisinde başka bir ölçüte göre sıralamam gerekiyor. ekte verdiğim dosyada ayrıntılı anlatıyorum. yardımcı olursanız sevinirm.
 
Tablonuzun içindeyken Ctrl+* tuşlayın (tüm tabloyu seçer)

Menülerden Veri, Sırala'yı tıklayın.

İlk sıralama ölçütünde "Form" başlığını seçin.

İkinci sıralama ölçütünde "İht.mkt." başlığını seçin.

Tamam'ı tıklayın.
 
1) D2 hücresini seçin,

2) Data >> Sort

3) Sort by: Form (Ascending)

4) Then by: Tahditsiz (Ascending)

5) My List has header row (seçili)

6) Ok tuşuna tıklayın.
 
buraya kadar çok teşekkürler. peki bunu yaptıktan sonra mesela 2001 kodunda sadece ihtiyaç miktarı eksi olanları J sütunundaki Büp'e göre sıralatmam gerekiyor.(her kod kendi içerisinde sıralanacak) ve bunu makroda yapıcam. ayrıca eksi olanları elimle seçip yapmamalıyım. otomatik birşey olmalı. yani eksi olanlar bugün 3 satırken yarın 8 satır olabilir. o yüzden eksi olanları bulup sıralayacak birşey olmalı.
 
Selection.AutoFilter
Selection.AutoFilter Field:=4, Criteria1:="2001"
Selection.AutoFilter Field:=8, Criteria1:="<0", Operator:=xlAnd
Range("A2:L16492").Sort Key1:=Range("J3"), Order1:=xlAscending, Key2:= _
Range("A3"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
DataOption2:=xlSortNormal


criter k&#305;sm&#305;nda 2001 yazmamal&#305; her form numaras&#305; de&#287;i&#351;ti&#287;inde ayn&#305; i&#351;lemi yapacak bi&#351;ey olmal&#305;. yani s&#305;ras&#305;yla 2001formu i&#231;in bu i&#351;lemi yapmal&#305; sonra 2030 formu i&#231;in ayn&#305; i&#351;lemi yapmal&#305;. b&#246;yle b&#252;t&#252;n kodlar i&#231;in yapacak bir kod ar&#305;yorum:(
 
Kod:
Range("H3").Activate
For i = 3 To [B65536].End(3).Row
Range(Selection, Selection.End(xlDown)).Select
n = Selection.Count
ActiveCell.Rows("1:n").EntireRow.Select


Selection.Sort Key1:=ActiveCell.Offset(0, 9).Range("A1"), Order1:= _
xlAscending, Key2:=ActiveCell, Order2:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortNormal
next i


Bu kodlarla ilgili bi sorunum var. Burda dolu olan satırların en sonuna kadar seçtirip kaç satır olduğunu saydırıyorum. ve bu satırları satır olarak tamamen seçmek istiyorum. fakat burda n'e kadar seç dediğimde olmuyor. nerde hata yapıyorum????
 
EntireRow

Burada dolu olan satırları en sonuna kadar seçtirip kaç satır olduğunu saydırıyorum. ve bu satırları satır olarak tamamen seçmek istiyorum. fakat burda n'e kadar seç dediğimde olmuyor. nerde hata yapıyorum????

Range("H3").Activate
For i = 3 To [B65536].End(3).Row
Range(Selection, Selection.End(xlDown)).Select
n = Selection.Count
ActiveCell.Rows("1:n").EntireRow.Select
 
yanıt

Bu şekil bir deneyiniz.
Kod:
Sub test()
Range(Selection, Selection.End(xlDown)).EntireRow.Select
End Sub
 
Eğer "B" sütunundaki dolu satırları seçmek istiyorsanız;
Kod:
Sub sec()
n = [B65536].End(3).Row
Rows("1:" & n).Select
End Sub
şeklinde deneyin.
 
çok teşekkür ederim. bu oldu. fakat şimdi de şu sorun var. bu seçtiğim satırların altındaki satıra geçmesini istiyorum fakat sadece bi satır kayıyor. ben seçtiğim tüm satırların altındaki satıra geçmesini istiyorum bunu nasıl yaparım??
 
Son sat&#305;rdan sonraki sat&#305;r&#305; da m&#305; dahil etmek istiyorsunuz ?
 
Bu şekilde deneyiniz.

Sub Düğme1_Tıklat()
[B1].End(xlDown).Offset(1).Select
End Sub
 
Anladığım kadarıyla, sıralama yaptırdıktan sonra; son hücreden sonra gelen hücreyi seçtirmek istiyorsunuz.
Kod:
Cells(n + 1, "b").Select
bu satırı kodun sonuna ekleyin.
 
Say&#305;n Hulyaa/Priorix Neden 2 ayr&#305; nick kulland&#305;&#287;&#305;n&#305;z&#305; &#246;&#287;renebilir miyim?
 
3 tane sat&#305;r&#305;n b&#252;t&#252;n olarak se&#231;ili oldu&#287;unu d&#252;&#351;&#252;n&#252;n. bundan sonraki 4. satr&#305;da herhangi bi h&#252;creyi se&#231;se yeter.
 
Geri
Üst