Tarih yerine metin girersem makroda ne gibi değişiklik yapmalıyım?

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
Değerli arkadaşlar,
Makronun açıklamasına ihtiyacım var. Bu makrodan yararlanarak kendimi geliştirmeye yönelik çalışmalar yapmak istiyorum. Bu konuda yardımlarınızı bekliyorum. Şimdiden teşekkürler!!!

Örneğin; ben ay adlarına göre yani metin olarak “Ocak, Şubat, Mart” yazarak verileri aylara göre sıralayabilir miyim? Yine, tablonun sütun sayılarının artması veya azalması durumunda formülde ne gibi değişiklikler yapmalıyım.

Ayrıca; aylara göre değil de isimler vererek (Ahmet, Mehmet, ali vb. şekilde) aynı verileri dağıtabilir miyim?

Sub Düğme2_Tıklat()
SiL
i = 6
Do While IsDate(Cells(i, 20))
Range("B" & i & ":T" & i).Copy
Select Case Month(Cells(i, 20))
Case 1: Sheets("OCAK").Select
Case 2: Sheets("SUBAT").Select
Case 3: Sheets("MART").Select
Case 4: Sheets("NISAN").Select
Case 5: Sheets("MAYIS").Select
Case 6: Sheets("HAZIRAN").Select
Case 7: Sheets("TEMMUZ").Select
Case 8: Sheets("AGUSTOS").Select
Case 9: Sheets("EYLÜL").Select
Case 10: Sheets("EKIM").Select
Case 11: Sheets("KASIM").Select
Case 12: Sheets("ARALIK").Select
End Select
yap
Loop
Cells(6, 20).Select
End Sub
Sub yap()
j = 6
Do While Cells(j, 2) <> "" And Cells(j, 4) <> ""
j = j + 1
Loop
For s = 6 To j
Cells(s, 1) = s - 5
Next
Range("B" & j & ":T" & j).Select
ActiveSheet.Paste
Range("A6:A" & j).HorizontalAlignment = xlCenter
Range("A6:A" & j).VerticalAlignment = xlCenter
Range("A6:A" & j).Font.Bold = True
Sheets("DOGUM DEFTERI").Select
i = i + 1
End Sub
Sub SiL()

Sheets("OCAK").Range("A6:T2000").ClearContents
Sheets("SUBAT").Range("A6:T2000").ClearContents
Sheets("MART").Range("A6:T2000").ClearContents
Sheets("NISAN").Range("A6:T2000").ClearContents
Sheets("MAYIS").Range("A6:T2000").ClearContents
Sheets("HAZIRAN").Range("A6:T2000").ClearContents
Sheets("TEMMUZ").Range("A6:T2000").ClearContents
Sheets("AGUSTOS").Range("A6:T2000").ClearContents
Sheets("EYLÜL").Range("A6:T2000").ClearContents
Sheets("EKIM").Range("A6:T2000").ClearContents
Sheets("KASIM").Range("A6:T2000").ClearContents
Sheets("ARALIK").Range("A6:T2000").ClearContents
End Sub

Sub Düğme3_Tıklat()
Sheets("DOGUM DEFTERI").Select
End Sub
 
Katılım
15 Ocak 2007
Mesajlar
791
Excel Vers. ve Dili
2003 excel visual basic
tavsiye

arkada&#351;&#305;m yapmak istedi&#287;in &#351;ey "do&#287;um defteri" sayfas&#305;ndaki verileri kay&#305;t tarihlerindeki aya g&#246;re &#246;rnek 31.01.2007 ise Ocak ay&#305;na gitmesi gibi de&#287;il mi ?
e&#287;er b&#246;yleyse tabi ki de m&#252;mk&#252;nd&#252;r ancak sayfa isimlerini tam ve eksiksiz yapman gerekir ve s&#252;tun veya sat&#305;r say&#305;s&#305; &#246;nemli de&#287;ildir.ayr&#305;ca en alt mesaj&#305;n&#305;n en alt sat&#305;r&#305;nda yer alan &#351;u k&#305;sm&#305; >>
Sheets("OCAK").Range("A6:T2000").ClearContents
Sheets("SUBAT").Range("A6:T2000").ClearContents
Sheets("MART").Range("A6:T2000").ClearContents
Sheets("NISAN").Range("A6:T2000").ClearContents
Sheets("MAYIS").Range("A6:T2000").ClearContents
Sheets("HAZIRAN").Range("A6:T2000").ClearContents
Sheets("TEMMUZ").Range("A6:T2000").ClearContents
Sheets("AGUSTOS").Range("A6:T2000").ClearContents
Sheets("EYL&#220;L").Range("A6:T2000").ClearContents
Sheets("EKIM").Range("A6:T2000").ClearContents
Sheets("KASIM").Range("A6:T2000").ClearContents
Sheets("ARALIK").Range("A6:T2000").ClearContents
&#351;u &#351;ekilde de&#287;i&#351;tirmen daha pratik olacakt&#305;r >>
Sub temizle()
For a = 2 To Worksheets.Count
Sheets(a).Range("A6:T2000").ClearContents
Next
End Sub
:)
ilgili sayfaya aktarmak i&#231;in ise &#351;u &#351;ekildebir kod kullanabilirsin
Sub dagit()
Range("v2:v65536").ClearContents
For Each hucre In Range("v2:v13")
For a = 2 To Worksheets.Count
son = [v65536].End(3).Row + 1
Cells(son, "v") = Worksheets(a).Name
If Worksheets(a).Name = hucre Then
Sheets(a).Select
End If
Next
gibi bu sadece se&#231;ilen h&#252;cred yer alan de&#287;eri e&#287;er sayfa ismine denk ise se&#231;iliyor.
ii geceler...
 

Erdinç FIRTINA

Altın Üye
Katılım
14 Şubat 2007
Mesajlar
400
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
15-05-2026
teşekkürler!!!

Sayın emrexcel123,
vermiş olduğunuz bilgiler için teşekkürler.
ama ben makrolarla ilgili olarak daha çok yeni olduğumdan söylediğiniz değişiklikleri yapmak benim için o kadar kolay değil.

eğer dosyam üzerinde yardımcı olursanız çok sevinirim.


benim istediğim ekte sunduğum dosyadaki verileri sayfalara dağıtırken tarihe göre değil de örneğin ada göre veya yaşa vb. esas alarak dağıtmak.

örneğin;
benim tablom aşağıdaki gibi ve bu ilgili sayfalardaki belirlediğim hücrelere verileri dağıtmak istiyorum.

tablonun bilgileri(veri sayfası)
sütun B...........sütun C........sütun D..........sütun E..........sütun F
satır 2 ...yaş..............adı..............ilçesi..............köyü.............baba adı
satır 3 ...10...............Ali................aaa...............emka.............ali
satır 4....10..............veli................bbb...............seta..............veli
satır 5.....12..............ali................aaa...............seta...............mehmet
satır 6.....10..............veli..............ccc................seta..............veli

bu verileri ilçe adlarına göre oluşturacağım yeni sayfalardaki aaa, bbb,ccc sayfalarının 5.satırından ve f sütunundan başlayarak oluşturacağım aynı başlıklı tablolara aktarılmasını istiyorum.
ancak burada amacım sayfaları silerek yeniden sayfa oluşturmak ve oluşturulan sayfaların ilgili hücrelerine verileri aktarmak değil, önceden oluşturulmuş ve adları tanımlanmış aaa,bbb,ccc sayfalarındaki belirlenen hücrelere verileri aktarmaktır.
çünkü oluşturulan sayfaların diğer hücrelerinde başkaca veriler vardır.
eğer verileri tek komutla sayfalar oluşturarak aktarma yaparsam söz konusu sayfalardaki veriler siliniyor.

Yardımlarınız için şimdiden teşekkürler!!!
 
Üst