Çözüldü SATIRDAKİ İLK TARİHSEL VERİYİ BULMA FORMÜLÜ

yilmaz12

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
A
B
C
D
E
F
G
H
I
1METİN01.01.1990METİNMETİN
203.05.201306.09.201406.09.2014METİNMETİN28.05.1999
3METİNMETİN03.08.2013METİN
4METİNMETİNMETİN15.6.2000METİNMETİN
5METİNMETİNMETİNMETİN10.11.202012.12.2021
6
7




Bir satır aralığında (A1:F1 gibi) içinde TARİHSEL veri olan İLK HÜCREYİ (H1) HÜCRESİNE nasıl getirebilirim. Yani sarı işaretle işaretlediğim verileri kırmızı dolgu yaptığım yere nasıl otomatik olarak taşıyabilirim.
 
Merhaba ,ofis 365 kullanıyorum. Formülü kopyalarken "dizi" özelliği otomatik olarak geldiği için hata olmuş. İşlevi yazdıktan sona ENTER yapmadan lütfen CTRL+SHIFT+ENTER yapın.
Size yardımcı olmaya çalışırken tüm koşulların tam olması gerekliliğini göz ardı ettim. Sn. Ömer BARAN' ın yaptığı açıklamayı dikkate alarak önerdiğim çözümü uygulayın lütfen.

{=EĞERHATA(İNDİS(A1:F1;;KAÇINCI(DOĞRU;GÜN(A1:F1)>0;0));"VERİ YOK")}
 
Moderatörün son düzenlenenleri:
Merhabalar.

Biraz teorik açıklama yapayım dedim, faydalı olabilir ve umarım yanlış bir şeyler yazmam.

Malum bizim TARİH dediğimiz şey MsExcel açısından bir SAYIdır, hücrenin biçimine göre de SAYIların TARİH gibi görünmesi sağlanır.
Örneğin bir hücreye 1 yazdığınızda hücre biçimi TARİH olarak ayarlanmışsa, excel bunu otomatik olarak 01.01.1900 olarak, 0 yazmışsanız 00.00.1900 olarak değiştirir.
Ms.Excel açısından tarih verileri esas olarak 01.01.1900'den başlayıp 1 artarak devam eden SAYIlardır (1904 tarih sistemi diye bir şey daha var o ayrı mevzu).
Örneğin bir hücreye =BUGÜN() formülü uygulayıp hücrenin biçimini SAYI veya GENEL şeklinde ayarlarsanızgöreceğiniz şey 44202 sayısıdır. Bu da 01.01.1900'den bu yana KAÇ GÜN geçtiğini gösterir, yani excel için tarih işlemlerinde 1 sayısı GÜN anlamına gelir.

MAKROda TARİH Mİ? : A1'e 1 yazılıp, makro kodu ile MsgBox IsDate(ActiveSheet.[A1]) gibi bir kod satırı oluşturulursa,
hücre SAYI/GENEL olarak biçimlendirilmişse FALSE, tarih olarak biçimlendirilmişse TRUE değerini döndürür.
FORMÜLde TARİH : Bildiğim kadarıyla Excel'in yerleşik işlevlerinde =TEKMİ(), =ÇİFTMİ(), =EMETİNSE() =ESAYIYSA() gibi
=ETARİHSE() veya =ETARİHMİ() gibi bir işlev yok malesef.
Hücrede POZİTİF bir SAYISAL bir veri varsa ve bu sayı 2958466 'dan küçükse (Excel hücresine şu anda en fazla 31.12.9999 tarihi yazılabilir ve verdiğim sayı bu tarihi temsil ediyor, tıpkı 44202 sayısının bugünün tarihini gösterdiği gibi) biçimlendirme ister SAYI/GENEL, isterse de TARİH olsun, bu hücreye atıf yapacak =YIL(...) veya =AY(...) ya da =GÜN(...) formülü SAYISAL (tarihin günü, ayı veya yılı) sonuç verir.
Negatif veya, belirttiğim sayıdan büyük bir değer için ise #SAYI! hatasını verir.

Ezcümle diyeceğim şudur;
hücrede POZİTİF ve 2958466'dan küçük bir sayı varsa bu sayının TARİH mi SAYI mı olduğunu formülle tespit etmeniz güç.
AY/YIL/GÜN formülleri bu işi görmez. SAYInın ondalıklı olması da sonucu değiştirmez, ondalık kısmı SAAT/DAKİKA anlamına gelir.
Hatta TARİH görünen hücrede, gün/ay/yıl ayracı neyse (nokta veya kesme işareti) =BUL(".";....) veya =BUL("/";....) işlevleri de sonuç vermez. Hücrede bu noktalama işaretini var olarak görseniz de gerçekte yoktur ve hücre içeriği sadece SAYIdır. Çünkü TARİH bir SAYIdır.
.
 
EĞERHATA(İNDİS(A1:F1;;KAÇINCI(DOĞRU;GÜN(A1:F1)>0;0));"TARİH VERİSİ YOK")
1589545166313.webp
 

Ekli dosyalar

  • 1609998272198.webp
    1609998272198.webp
    14.4 KB · Görüntüleme: 14
Merhaba ,ofis 365 kullanıyorum. Formülü kopyalarken "dizi" özelliği otomatik olarak geldiği için hata olmuş. İşlevi yazdıktan sona ENTER yapmadan lütfen CTRL+SHIFT+ENTER yapın.
Size yardımcı olmaya çalışırken tüm koşulların tam olması gerekliliğini göz ardı ettim. Sn. Ömer BARAN' ın yaptığı açıklamayı dikkate alarak önerdiğim çözümü uygulayın lütfen.

{=EĞERHATA(İNDİS(A1:F1;;KAÇINCI(DOĞRU;GÜN(A1:F1)>0;0));"VERİ YOK")}
çok teşekkür ederim. çok sağ olun. harika oldu. Ellerinize emeğinize sağlık.
 
Konuyu başlatan
Normal Üye
Katılım
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Formül Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
6
Üst