ay ismini sıralama?

Katılım
16 Nisan 2006
Mesajlar
28
ay ların isimi alfabetik olarak sıraladığım zaman

şubat
ocak
nisan
mayıs
mart
olarak sıralıyor makro olarak ay sırasına nasıl sıralatabilirim..............
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
ay ların isimi alfabetik olarak sıraladığım zaman

şubat
ocak
nisan
mayıs
mart
olarak sıralıyor makro olarak ay sırasına nasıl sıralatabilirim..............
Merhaba.
Aşağıdaki kodlar umarım işiniz görür.
A1 'den itibaren ayları sıralar.:cool:
Kod:
Sub aylar()
Range("A1:A12").ClearContents
For i = 1 To 12
Cells(i, "A").Value = Format(DateSerial("2007", i, "01"), "mmmm")
Next
End Sub
 
Katılım
16 Nisan 2006
Mesajlar
28
12 ay sıralamak istemiyorum şimdi veriyi çekiyorum
şubat
ocak
nisan
mayıs
mart
ay isimleri böyle geliyor ben bu veriyi sıralatmak istiyorum...
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ayların yanına ay numaralarını yazınız,ve Sıralamayı verdiğiniz numaraları baz alarak sıarlama yapmayı deneyiniz.:cool:
 
Katılım
16 Nisan 2006
Mesajlar
28
Ali bey öbür sorumla aynı değil fonksiyon dan ziyade vb olsa daha iyi..
ayrıca ayların başına sayılarını getirme şansım yok..
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,652
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub Makro1()
    Range("A1:A5").Sort Key1:=Range("A1"), Header:=xlGuess, OrderCustom:=5
End Sub
 
Katılım
16 Nisan 2006
Mesajlar
28
Bu yöntem yine olmaz çünkü ayın ilk harfine göre sıralıyor ağustos hazirandan öne geliyor.. ancak böyle halledebildimm..
For b = 44 To 55
If Range("e" & b) = "ocak" Then Range("e" & b).Value = "1"
If Range("e" & b) = "Şubat" Then Range("e" & b).Value = "2"
If Range("e" & b) = "mart" Then Range("e" & b).Value = "3"
If Range("e" & b) = "nisan" Then Range("e" & b).Value = "4"
If Range("e" & b) = "mayıs" Then Range("e" & b).Value = "5"
If Range("e" & b) = "haziran" Then Range("e" & b).Value = "6"
If Range("e" & b) = "temmuz" Then Range("e" & b).Value = "7"
If Range("e" & b) = "ağustos" Then Range("e" & b).Value = "8"
If Range("e" & b) = "eylül" Then Range("e" & b).Value = "9"
If Range("e" & b) = "ekim" Then Range("e" & b).Value = "10"
If Range("e" & b) = "kasım" Then Range("e" & b).Value = "11"
If Range("e" & b) = "aralık" Then Range("e" & b).Value = "12"
'If Range("f" & b) = "0" Then Range("e" & b) = ""
If Range("f" & b) = "" Then Range("e" & b) = ""

Next b

Range("e44:f55").Sort Key1:=Range("e44"), Header:=xlGuess, OrderCustom:=12

For b = 44 To 55
If Range("e" & b) = "1" Then Range("e" & b) = "ocak"
If Range("e" & b) = "2" Then Range("e" & b) = "Şubat"
If Range("e" & b) = "3" Then Range("e" & b) = "mart"
If Range("e" & b) = "4" Then Range("e" & b) = "nisan"
If Range("e" & b) = "5" Then Range("e" & b) = "mayıs"
If Range("e" & b) = "6" Then Range("e" & b) = "haziran"
If Range("e" & b) = "7" Then Range("e" & b) = "temmuz"
If Range("e" & b) = "8" Then Range("e" & b) = "ağustos"
If Range("e" & b) = "9" Then Range("e" & b) = "eylül"
If Range("e" & b) = "10" Then Range("e" & b) = "ekim"
If Range("e" & b) = "11" Then Range("e" & b) = "kasım"
If Range("e" & b) = "12" Then Range("e" & b) = "aralık"
If Range("f" & b) = "0" Then Range("e" & b) = ""
Next b
 
Üst