• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Formatlı yazım (° ' ")

  • Konbuyu başlatan Konbuyu başlatan k0081
  • Başlangıç tarihi Başlangıç tarihi
Katılım
17 Haziran 2008
Mesajlar
1,874
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
merhaba arkadaşlar;

excel de bir hüceye 45° 19' 12" şeklinde yazmak istiyorum.. yalnız bunu hücre biçimlendirden yaptığımda; kullanmış olduğum Çeviri modülü hata veriyor...

bu değeri cevirdiğimde almam gereken sonuç : 45,32 dir..

yardımcı arkadaşa şimdiden teşekkürler..

çeviri modülüm;

Kod:
Function Convert_Decimal(Degree_Deg As String) As Double
   ' Declare the variables to be double precision floating-point.
   Dim degrees As Double
   Dim minutes As Double
   Dim seconds As Double
   ' Set degree to value before "°" of Argument Passed.
   degrees = Val(Left(Degree_Deg, InStr(1, Degree_Deg, "°") - 1))
   ' Set minutes to the value between the "°" and the "'"
   ' of the text string for the variable Degree_Deg divided by
   ' 60. The Val function converts the text string to a number.
   minutes = Val(Mid(Degree_Deg, InStr(1, Degree_Deg, "°") + 2, _
             InStr(1, Degree_Deg, "'") - InStr(1, Degree_Deg, _
             "°") - 2)) / 60
    ' Set seconds to the number to the right of "'" that is
    ' converted to a value and then divided by 3600.
    seconds = Val(Mid(Degree_Deg, InStr(1, Degree_Deg, "'") + _
            2, Len(Degree_Deg) - InStr(1, Degree_Deg, "'") - 2)) _
            / 3600
   Convert_Decimal = degrees + minutes + seconds
End Function
 
Son düzenleme:
Sorunuz anlaşılmıyor. Verdiğiniz fonksiyonla istediğinizi yapamıyormusunuz.
 
Sizin istediğinizi karşılar mı bilmiyorum ama, birşeyler karaladık. Umarım işinizi görür.
 

Ekli dosyalar

ExcelF1;

hocam çok teşekkürler..

**************
Levent menteşoğlu;

hocam kod mevcut.. bunun exceldeki yazılışı nasıl olacak onu sormuştum..yani kod bir çeviri yapıyor,, ama excel hücresine nasıl, hangi formatta gireceğim..( bu ifadeyi ; 45° 19' 12")
 
Sayın k0081,

Bende sanırım sorunuzu tam anlayamadım. Sizin öğrenmek istediğiniz, birimin yazılma şekli midir ? Eğer o ise, yazım şekliniz doğru. Yani aralarda 1 boşluk olacak şekilde. Yoksa ifadeyi yazdıktan sonra çevirmek için ne yazacağınız mı ?

Birimin A1 hücresinde olduğunu kabul edelim. İfade yazma şekli, 45° 19' 12"
B1'de çevirmek istiyorsunuz. Çevirmek için yazmanız gereken, =Convert_Decimal(A1)


Alternatif olması açısından, biraz daha uzun yoldan oldu ama, bir kodlama daha yaptık. İnceleyiniz.
 

Ekli dosyalar

Gecenin bu saatinde kafa biraz geç şarj ediyor sanırım. :)

Acaba Siz, hücre formatını değiştirdiğim için neden çeviri yapamıyorum diye mi soruyorsunuz ? Örneğin hücreye,
102030 yazıyorsunuz, hücre formatı ile girilen veri 10° 20' 30" şekline dönüşüyor. Ve çeviri fonksiyonu neden çalışmıyor diye mi soruyorsunuz acaba ?

Eğer sorunuz bu ise, fonksiyon kodlarınızda değişiklik yapmak gerekecektir. Bilginize...
 
excel de bir hüceye 45° 19' 12" şeklinde yazmak istiyorum.. yalnız bunu hücre biçimlendirden yaptığımda; kullanmış olduğum Çeviri modülü hata veriyor...

bu değeri cevirdiğimde almam gereken sonuç : 45,32 dir..

yardımcı arkadaşa şimdiden teşekkürler..
.

Dosya ekte.

Veriyi; 45:19:12 şeklinde girerek, hücre biçimini [ss]º dd' nn\" şeklinde girin. Bunu 24 ile çarpın.



.
 

Ekli dosyalar

Gecenin bu saatinde kafa biraz geç şarj ediyor sanırım. :)

Acaba Siz, hücre formatını değiştirdiğim için neden çeviri yapamıyorum diye mi soruyorsunuz ? Örneğin hücreye,
102030 yazıyorsunuz, hücre formatı ile girilen veri 10° 20' 30" şekline dönüşüyor. Ve çeviri fonksiyonu neden çalışmıyor diye mi soruyorsunuz acaba ?

Eğer sorunuz bu ise, fonksiyon kodlarınızda değişiklik yapmak gerekecektir. Bilginize...


evet aynen öyle hocam.. :) yardımlarınız için teşekkürler..
**********************
Yuttaş
hocam tamamdır.. bu şekilde yaptığımızda oluyor.. 24 ile .çarptığımızda sonuç çıkıyor.. çevirici kodu devre dışı bırakıyoruz...
teşekkürler hocam..
 
Geri
Üst