Damga, kod, unikod

Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Merhaba

Damga, kod, unikod ve unikodkarakteri ile ilgili bir dosya hazırladım. Kafama takılan şeyleri de sormak istedim.

Sorular:

..
Alt+32 ile Alt+032 aynı karakterleri veriyor da (J4),
Alt+156 ile Alt+0156 neden farklı karakterleri veriyor (J7)

..
197 sayısının unikod karakteri ile damga karakteri aynı olduğu halde (J10),
208 sayısının unikod karakteri ile damga karakteri neden farklı (J13)

..
2 rakamının kodu ve unikod formülleri 50 sonucunu veriyor (H16) (I16),
253 sayısının da kodu ve unikodu 50 sonucunu veriyor (H18) (I18). Neden?

..
Kod formüllerinde birçok karakterin sonucu neden hep 63 çıkıyor?

 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
izcik' Alıntı:
Kod formüllerinde birçok karakterin sonucu neden hep 63 çıkıyor?
Merhaba,

63 çıkmasının sebebi dönen verinin bilinmezliğinden dolayı soru işareti olarak algılanmasından kaynaklıdır.

Rich (BB code):
DAMGA (CHAR) Fonksiyonu ASCII karakterlerden 256 karakter döndürmektedir.
Buna karşılık KOD (CODE) Fonksiyonu da verdiğiniz karakteri ASCII karaktere döndürmektedir.
UNICODEKARAKTERİ (UNICHAR) Fonksiyonu ise  UNICODE karakterinden 1.114.112 karakter döndürmektedir.
Buna karşılık UNICODE (UNICODE) Fonksiyonu da verdiğiniz karakteri UNICODE  karaktere döndürmektedir.
...
Bazen de ASCII kod değerlerinden bir sayısal değer döndürür.  Bu da sonucun doğru olmadığı anlamına gelmektedir.

Durumun böyle olmasının sebebi Unicode karakterleri iki bayt yer kaydetmesi , ASCII karakterleri ise 1 bayt yer kaydetmesindendir.
Eğer UNICODE karakterdeki bir değeri DAMGA (CHAR) fonksiyonu ile çağırırsanız 2 bayt olan UNICODE karakterinin ilk baytını okur.
Kalan diğer Bayt değerini göz ardı eder.

...
2 rakamının kodu ve unikod formülleri 50 sonucunu veriyor (H16) (I16),
253 sayısının da kodu ve unikodu 50 sonucunu veriyor (H18) (I18). Neden?
...
Siz birden fazla karakterli değer girdiğinizde ilk karakteri algılar Sonuç hiçbir zaman değişmeyecektir:
(2 = 28974564 = 2,456 = 01.01.1955 = 50 SONUCUNU VERİR)

Diğerleri için net bir bilgi edinemedim. Ama karakter setinden kaynaklandığını düşünüyorum.
İyi çalışmalar.
 
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Merhaba,

63 çıkmasının sebebi dönen verinin bilinmezliğinden dolayı soru işareti olarak algılanmasından kaynaklıdır.






Siz birden fazla karakterli değer girdiğinizde ilk karakteri algılar Sonuç hiçbir zaman değişmeyecektir:
(2 = 28974564 = 2,456 = 01.01.1955 = 50 SONUCUNU VERİR)

Diğerleri için net bir bilgi edinemedim. Ama karakter setinden kaynaklandığını düşünüyorum.
İyi çalışmalar.
Teşekkürler sayın netzome.

Yine dikkatimi çeken, farkına vardığım şeyler:

16 sayısının damga ve unikod karakteri, artı + işareti gibi bir karakter
Ama
Alt+16 yaptığımızda sağa doğru siyah üçgen ok ucu çıkıyor.



Benzer şekilde 17 sayısının damga ve U.K., sola doğru siyah üçgen olarak görünüyor.
Aynı şekilde
Alt+17 yaptığımızda da yine sola doğru siyah üçgen çıkıyor.
Ama
Çıkan bu iki siyah üçgen, birbirinin aynısı değil.

Karışık sonuçlar..
….

Yani gördüğüm kadarıyla aynı işlemlerin sonucu standart değil.
Oysa insan standart olmasını bekliyor.

Örnek:
Bir hücreye 123 sayısını yazdınız ve Ctrl+K yaptınız. Ne olur? Karakterler koyulaşır kalınlaşır.

Peki başka bir hücreye ABC harflarini yazdınız ve Ctrl+K yaptınız, yine kalınlaştırır.

Olması gereken de bu olmalıdır. Hücrelerden biri harfler, diğeri rakamlardan oluşuyor diye Ctrl+K farklı işlem yapmaz.

..
Ama (verdiğim örneklerden dolayı) karakter damga vs kodlarında; sade bir excel kullanıcısı olarak bir düzen göremiyorum. Sanki düzeltilmeyi bekleyen hatalar var gibi geliyor bana.
 
Üst