Girilen Tarihlere Göre Otomatik Hücre İsimlendirme

Katılım
15 Nisan 2008
Mesajlar
303
Excel Vers. ve Dili
2010
Merhabalar;

Eklemiş olduğum örnek dosyada gösterildiği gibi yeni kayıtlara göre kontrol adı sütununa ilgili isimlendirmeyi yapıp tarihe göre yeniden sıralayabilirmiyiz. Teşekkürler

Örnek Dosya
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,205
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Ekediğiniz dosyaya siz ulaşabiliyor musunuz?
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222

Değerli Hocalarım;
Formdan bulduğum çalışmalarla bir şeyler yapmaya çalışıyorum.

Yeni başlık açmadım, Başlık isteğe uygun görünüyor.


He ay sonu ; farklı isimlerde 4 adet rapor alınıyor

Tarihlerin gün sayısı, veya başka bir hesapla (Her ayın gün sayısına göre değişken olabiliyor) C1 'e istenilen sayfa ismi yazdırılabilir mi?

C1 'e gelecek olan isim farklı kaydet ile Kitap ismi olacak.

Örnek dosyadaki çalışma sizlerin ilgisini beklemekte.

 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
Dosyanızdaki kodlar farklo klasörler altında farklı dosyalara erişmek istiyor. Haliyle sizin dosyanızla işlem yaparken kendi bilgisayarımızda bu klasörlere erişemiyoruz.
Kodlarınız içinde bunları ayıklarsanız daha güzel olur.
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Makroların tamamı silinmiş hali.
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
Siz sadece raporun ilk tarihini seçin, bitiş tarihleri olan B4 ve aşağısındakiler için formül kullanın
B4 için kopyalayıp aşağı doğru sürükleyebilirsiniz.
=SERİAY(A4;0)

VBA içinde yapmak isterseniz aşağıdaki formattan faydalanabilirsiniz.
Ben A4 deki tarihe göre yazdım.
Kod:
[b4] = DateAdd("m", 1, [A4]) - 1
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Hocam;
Soruş biçimi ve gönderdiğim ek sizi yanıltmış olmalı.

A1'e başlangıç Tarihi, B1'e bitiş tarihi girilecek; C1'de Gün sayısı veya başka bir hesaplama ile
30 gün ise "Bu Ay Satış"
60 gün ise "Geçen ay Satış"
365 gün ise "Geçen Yıl satış"
ve "Yıllık Satış" yazması isteniyor.

Hücre biçimlendirmede 30 gün için "Bu Ay Satış" yapıldı fakat ayların günü değiştiği için pek olmadı.




   
   
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
Kafam iyice karıştı.

1. B1-A1 farkı 25 günse ne yapılacak?
2. B1-A1 farkı 40 günse ne yapılacak?
3. B1-A1 farkı 75 günse ne yapılacak?
4. B1-A1 farkı 365 ise Geçen Yıl Satış nereye Yıllık Satış nereye yazılacak?
5. D1 deki 30 ifadesi neyi ifade ediyor?
6. F1 deki Formül sonucu bulunan "otuz" yazısı nedir? Bizi ilgilendiren bir husus mudur?
7. A4:C7 aralığıyla ilgili biz bir şey yapacak mıyız?
8. Bir döngüden bahsediyorsunuz ama ortada KOD da kalmadı. 4 farklı rapor nerede alınıyor
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Hocam;
O soruların cevabını ben hiç bilmiyorum.
Kurgusunu, şöyle düşündüm, bu ayın 1 ile 31 gün arası olanlar, = Bu Ay Satışlar yazdırabiliyoruz. hücre biçimlendirme tarihe yazarak
peki geçen ay 1 ile 30 veya 28-29 olduğunda nasıl yazdıracağız?


İstenilen çalışmanın aşırı karışık olduğu var sayılarak, Sadelikten uzak, kontrol edilmesi zor
Her düğmeye bir makro tanımlanarak, Kitap adları oluşturuldu.


Fakat istenilen arzu edilenler, şöyleydi.


*Bulunduğumuz ayın başlangıç ve bitiş tarihleri giriliyor ve C1 de "Bu Ay Satışlar, D1 'de de 1" yazması isteniyor. (Farklı kaydettiğimizde C1 ve D1 Kitabın ismi olacak)

*Geçen ay işler nasıl olmuş diye, geçen ayın başlangıç ve bitiş tarihleri giriliyor ve C1 de "Geçen Ay Satışlar, D1 'de de 2" yazması isteniyor.

*Geçen yıl Aynı ayda işler nasılmış diye merak edildiğinde, Geçen yılın bulunduğumuz ayın başlangıç ve bitiş tarihleri giriliyor ve C1 de "Geçen Yıl Satışlar, D1 'de de 3" yazması isteniyor.

*Burada da, Yıl Başından bu ay sonuna kadar işler nasıl olmuş diye, yıl başı tarihi ve bulunduğumuz ayın son tarihi giriliyor, C1 de "Bu Yıllık Satışlar, D1 de de 4" yazması isteniyor.

*Burada ise, Geçen yıl Yıl Başından geçen yılın bu ayı sonuna kadar işler nasıl olmuş diye, Geçen yıl başı tarihi ve geçen yılın bulunduğumuz ayın son tarihi giriliyor, C1 de "Geçen Yıllık Satışlar, D1 de de 5" yazması isteniyor.

*Sonrasında; C1 ve D1 de oluşan kitap isimleri ile farklı kaydedilerek elde edilen veriler gerekli tablolara yollanacak.

İlgi ve alakanıza can-ı gönülden teşekkür ederim.

Sağ olun var olun.
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
Aşağıdaki Makroları ilgili butona atayabilirsin.
C++:
Sub Makro_BuAy()
    Range("C1") = "Bu Ay Satışlar"
    Range("D1") = "1"
    Range("A1") = DateSerial(Year(Date), Month(Date), 1)
    Range("B1") = DateAdd("m", 1, Range("A1")) - 1
End Sub
Sub Makro_GecenAy()
    Range("C1") = "Geçen Ay Satışlar"
    Range("D1") = "2"
    Range("A1") = DateAdd("m", -1, DateSerial(Year(Date), Month(Date), 1))
    Range("B1") = DateAdd("m", 1, Range("A1")) - 1
End Sub
Sub Makro_GecenYıl()
    Range("C1") = "Geçen Yıl Satışlar"
    Range("D1") = "3"
    Range("A1") = DateSerial(Year(Date) - 1, Month(Date), 1)
    Range("B1") = DateAdd("m", 1, Range("A1")) - 1
End Sub
Sub Makro_BuYıllık()
    Range("C1") = "Bu Yıllık Satışlar"
    Range("D1") = "4"
    Range("A1") = DateSerial(Year(Date), 1, 1)
    Range("B1") = DateAdd("m", 1, DateSerial(Year(Date), Month(Date), 1)) - 1
End Sub
Sub Makro_GecenYıllık()
    Range("C1") = "Geçen Yıllık Satışlar"
    Range("D1") = "5"
    Range("A1") = DateSerial(Year(Date) - 1, 1, 1)
    Range("B1") = DateAdd("m", 1, DateSerial(Year(Date) - 1, Month(Date), 1)) - 1
End Sub
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Hocam;

Hani derler ya;

Valla Helal Olsun.

Ekim, Kasım ayı geldiğinde bu şekilde devam edecek mi?
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Hocam.
Sayenizde rahatladım,

Hokus pokus gibi fakat gerçek,
Hakkınızı helal ediniz, Büyük kolaylık sağladınız.
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
256
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Hocam Rahatsızlık vermek istemedim,
Makrolar harika çalışıyor buna ilave diğer makrolarla tam istediğimiz neticeyi elde ettik.

Bu sabah Satış raporu istendiğinde, Ay Sonu olarak gelen tarihleri 06.09,2021 olarak el ile değiştirdik.
Baktım ben bir şey yapabilir miyim diye hiç benlik bir iş değil.

Sorun değil el ile değiştirip raporları aldık, bu durum fakat Excel ruhuna aykırı diye düşündüm.
Ve sizden rica etmeye karar verdim.

A1 ve B1 'e gelen tarihler;

Bu gün Rapor alıyor olsak; = 06.09.2021

A1 B1
"Bu Ay Satışlar" 01.09.2021 - 06.09.2021
"Geçen Ay Satışlar" 01.08.2021 - 06.08.2021
"Geçen Yıl Satışlar" 01.09.2020 - 06.09.2020

"Bu Yıllık Satışlar" 01.01.2021 - 06.09.2021
"Geçen Yıllık Satışlar" 01.01.2020 - 06.09.2020

İlginize şimdiden teşekkür eder, esenlikler dilerim.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
C++:
Sub Makro_BuAy()
    Range("C1") = "Bu Ay Satışlar"
    Range("D1") = "1"
    Range("A1") = DateSerial(Year(Date), Month(Date), 1)
    Range("B1") = Date
End Sub
Sub Makro_GecenAy()
    Range("C1") = "Geçen Ay Satışlar"
    Range("D1") = "2"
    Range("A1") = DateAdd("m", -1, DateSerial(Year(Date), Month(Date), 1))
    Range("B1") = DateAdd("d", Day(Date) - 1, Range("A1"))
End Sub
Sub Makro_GecenYıl()
    Range("C1") = "Geçen Yıl Satışlar"
    Range("D1") = "3"
    Range("A1") = DateSerial(Year(Date) - 1, Month(Date), 1)
    Range("B1") = DateSerial(Year(Date) - 1, Month(Date), Day(Date))
End Sub
Sub Makro_BuYıllık()
    Range("C1") = "Bu Yıllık Satışlar"
    Range("D1") = "4"
    Range("A1") = DateSerial(Year(Date), 1, 1)
    Range("B1") = Date
End Sub
Sub Makro_GecenYıllık()
    Range("C1") = "Geçen Yıllık Satışlar"
    Range("D1") = "5"
    Range("A1") = DateSerial(Year(Date) - 1, 1, 1)
    Range("B1") = DateSerial(Year(Date) - 1, Month(Date), Day(Date))
End Sub
 
Üst