Ad tanımlama nasıl yapılır

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

Ekte bundan 10 yıl önce Sayın İdris Serdar uzmanımın “ad tanımlama” ile oluşturulmuş olduğu, hücre içi hesaplama işi yapan bir dosya vardır.

Ad tanımlama yaparak yapıldığını biliyorum, içinde DEĞERBİÇ gibi daha önce hiç duymadığım bir kavram geçtiğini biliyorum. HESAPLA şeklinde bir fonksiyon kullanılıyor.

Fakat boş bir dosyaya, sıfırdan (deneme yanılmayla) yapayım dedim, yapamadım.

Nasıl yapıldığını adım adım anlatır mısınız?

(Neden bir çok makro KTF varken bunu öğremek istedim? Sebebi şu, elimdeki yıllardır arşivimde duran bir çok makro veya ktf ile 0,1+0,1 toplamak istedim, toplamadılar. Ondalıklı sayıları toplamadı birçok makro. Fakat ekteki dosya topladı)


 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,269
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
"...toplamadılar..." ifadenizde belirttiğiniz gibi arşivinizdeki kodlamalar büyük ihtimalle her koşul belirtilmediği için örnek dosyalara göre hazırlanmıştır. Eğer sorularda ondalıklı sayılarla işlem yapılacağı belirtilmiş olsaydı mutlaka kodu öneren kişi tarafından bu duruma uygun kodlar hazırlanırdı. Yani demem o ki her kod her koşulda doğru sonuç vermeyebilir.

Aşağıdaki KTF ondalıklı sayılarla da istediğiniz sonucu verecektir.

C++:
Option Explicit

Function HESAPLA(Veri As Variant) As Double
    Application.Volatile True
    HESAPLA = Evaluate(Replace(Veri.Value, ",", "."))
End Function
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde deneyiniz.
218684
218697
 
Son düzenleme:
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
"...toplamadılar..." ifadenizde belirttiğiniz gibi arşivinizdeki kodlamalar büyük ihtimalle her koşul belirtilmediği için örnek dosyalara göre hazırlanmıştır. Eğer sorularda ondalıklı sayılarla işlem yapılacağı belirtilmiş olsaydı mutlaka kodu öneren kişi tarafından bu duruma uygun kodlar hazırlanırdı. Yani demem o ki her kod her koşulda doğru sonuç vermeyebilir.

Aşağıdaki KTF ondalıklı sayılarla da istediğiniz sonucu verecektir.

C++:
Option Explicit

Function HESAPLA(Veri As Variant) As Double
    Application.Volatile True
    HESAPLA = Evaluate(Replace(Veri.Value, ",", "."))
End Function
Sayın uzmanım
yukarıdaki kodlar nokta ile yazılmış ondalıklı sayıları da topluyor. Oysa bildiğim kadarıyla matematikte ve excelde nokta ile yazılmış ondalıklı sayı yoktur.

Sadece virgül ile yazılmış ondalıklı sayıları toplayacak şekilde düzeltirmisiniz. Yapmaya çalıştım, noktalı kısmı sildim, olmadı. Hata verdi.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,269
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
VBA tarafında virgül nokta ile ifade edilir.
 

Necdet

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

AD tanımı için ekteki dosyayı Eklenti olarak kaydedin.
Eklentileri aktif hale getirin.

AD tanımı yapacağınız zaman Sağ Tuşa bastığınızda NECDET Ad Tanımı göreceksiniz.
Onu çalıştırdığınızda uygun AD tanımı yapmış olacaksınız.

E bunları yapmak için de Altın Üyelik Şart maalesef, dosyayı indirebilmek için.
 

Ekli dosyalar

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

Konuya yeni vakıf oldum.

Excel 4.0 Makro Fonksiyonları

Visual Basic for Applications (VBA) ‘dan önce Excel makroları veya XLM vardı. VBA, Excel sürüm 5.0'da tanıtıldı. Bu nedenle bu eski XLM makroları Excel 4 Makroları olarak da bilinir.

Excel 4.0 makrosu kullanmak için herhangi bir programlama gerekmez. Bunları bir işlev gibi kullanırız. Örnek = GET.CELL (64, A-1). Bu bize A1 hücresinin arka planının ColorIndex'ini verir.

Ancak, bunları çalışma sayfasına yapıştıramayız. Bunları ad tanımlarında kullanılması gerekir. Veya bir VBA'da da kullanılabilirler.

Excel 4.0 makroları Excel'de 2016 sürümüne kadar hala çalışıyor olduğunu biliyorum.

Bu dosyada Excel 4.0 Macro Fonksiyonlarından EVALUATE'ın Ad tanımlamasında ve VBA'da KTF olarak kullanılması gösterilmiştir.




.

.
 

Ekli dosyalar

Son düzenleme:
Üst