Bu makroyu fonksiyon olarak nasıl yazabilirim?

Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Arkadaşlar daha önce arkadaşların yardımı ile bazı değerleri hesaplatmak için makro olarak yazmada yardım istemiştim. Bu makroları Textbox ve Label içerisinde kullanacağım için tek bir defa da tanımlayıp fonksiyon haline getirmek aklıma geldi; ancak fonksiyon olarak nasıl düzenleyeceğimi bilemediğim için yardımlarınızı bekliyorum. Teşekkürler.
Kod:
        If [K18] <> 0 Then
            [C18] = [N18] / [K18]
        Else
            [C18] = 0
        End If
        

        If [C18] >= 2 Then
            [C19] = "Başarılı"
        Else

        If [C18] < 2 Or "0" Then
            [C19] = "Başarısız"

        If [C18] = Empty Then
            [C19] = "Kriter Yok"
        End If: End If: End If
        
        If [K20] <> 0 Then
            [C20] = [N20] / [K20]
        Else
            [C20] = 0
        End If

********************************************************************
********************************************************************

Dim hcr As Range
If Intersect(Target, Range("J:J,Z:Z")) Is Nothing Then Exit Sub
On Error Resume Next
Set hcr = Target.Offset(0, 2)
hcr.Value = ""
Select Case UCase(Target.Value)
    Case "AA": hcr.Value = 4
    Case "BA": hcr.Value = 3.5
    Case "BB": hcr.Value = 3
    Case "CB": hcr.Value = 2.5
    Case "CC": hcr.Value = 2
    Case "DC": hcr.Value = 1.5
    Case "DD": hcr.Value = 1
    Case "G": hcr.Value = 0
End Select
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
Arkadaşlar daha önce arkadaşların yardımı ile bazı değerleri hesaplatmak için makro olarak yazmada yardım istemiştim. Bu makroları Textbox ve Label içerisinde kullanacağım için tek bir defa da tanımlayıp fonksiyon haline getirmek aklıma geldi; ancak fonksiyon olarak nasıl düzenleyeceğimi bilemediğim için yardımlarınızı bekliyorum. Teşekkürler
merhaba
hiç makro yokmuş gibi örnek dosya ekleyin ve ne istediğinizi belirtin
 
Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Arkadaşlar TrDonemDers formuna girilen derslere göre TranskriptForm formuna ders kodu girdiğimde dersin adı kredisi ve daha önce belirlediğim hesaplamalar oluşacak.
 

Ekli dosyalar

Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Arkadaşlar kullandığım form multipage özelliğine sahip,
her sayfasında bir yarıyılın dersleri ve kredileri ve notların hesaplamaları var.
Formu indirdiyseniz. Sayfahesap makrosunda hesapların yapılışını görebilirsiniz.

1. Ders kodunu girdiğimde KT sayfasından karşılaştırıp DERS ADINI ve KREDİSİNİ başlık altındaki ilgili label alanlarına aktarması gerekiyor.
Sınav notlarını elle gireceğim.
2.Girilen not ortalamasını Ders Notu alanındaki soldaki labele ekleyecek çünkü sağdaki dersin kredi karşığı

Örneğin o dersin kredisi 4 ise AA yazacak ilgili labele
kredisi başlığı altındaki alana Ders notu kısmında AA veya DD ne ise ona göre kredi puanını yazacak(üst mesajdaki makroda bunların puanlamaları mevcut)

3. aşağıda ise bunların genel toplamlarını yansıtmak istiyorum.
Kod:
Private Sub MultiPage1_Change()

Set KT = Sheets("KT")


For i = 9 To 15

For s = 6 To 12
For lb1 = 22 To 28
For lb2 = 43 To 49
If Controls("textbox" & i)  = KT.Range("A" & s).Value Then


Controls("label" & lb1) = KT.Range("B" & s)
Controls("label" & lb2) = KT.Range("C" & s)

End If
'Next: Next: Next: Next

End Sub
şeklinde yazdım ancak kodu yazdığımda ilgili alanlara sayfadaki verileri alamadım.

KT sayfası için basit bir örnek ekliyorum. Yardımcı olursanız sevinirim.
 

Ekli dosyalar

  • 361.5 KB Görüntüleme: 11
Son düzenleme:
Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Bu konuda yardımcı olacak arkadaşlar olursa sevinirim. Burada temel olarak şu olmalı, textbox a girilen ders kodu labellerde görüntülenirken bir defaya mahsus kod yazabilirsek aynı kodu tekrar yamak yerine çağırmak daha yerinde olur. Sayıyı yazıya çevirme de olduğu gibi.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ben ne form görebildim nede makro görebildim.Herhalde transparan form yaptınız.:cool:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Tasrım kötü gibi geldi bana.
Bir listbox veya listviewde bilgiler listelenir.Alta textbox konulur listboxtan seçilenler alttaki textboxlara aktarılır.Değişiklik yapılacaksa veya silinicekse buradan yapılır.Bu şekilde yapmak için ya textboxlara verileri satır satır kod yazarak teker teker alıcan veya her page'nin içindeki textboxları oraya bir frame koyacan ve textboxların tag özelliklerine veriyi alacağı hücrenin satır numarasını ve sütun numarasını yazıcan,aralarınada tire koyacan,çyle yapıcan.Aklıma bu geldi.:cool:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Bu şekilde en doğrusu propertiesten Her textbox'ın ControlSource özelliğine Bağlı bulunduğu Hücrenin adresini yazıcan.En doğru işlem bu olur sanırım .bu sistem için.
Mesela Textbox1'in controlsource özellğine A11 yazmanız gerekir.:cool:
 
Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Herşeyden önce üslup hatanız var; 4 yıl okuyan bir öğrenci 8 yarıyıl görüyorki bunu formun hangi listview ya da Lisboxuna alacaksınız, kaldıki benim hazırladığım form işin kayıt ve değerlerin hesaplanıp sayfalara aktarılacağı kısım. Her page 1 yarıyıl için kullanarak görüntüde alan kazanmaya çalıştım. KT sadece derslerin olduğu bir sayfa. Daha önce basit bir şekilde hazırlanmış. Yeni yeni şekil almaya başlıyor. Öncelikli olarak değerlerin aktarılmasını dengeye oturtmaya çalışıyorum. Makyaj kısmı sona kalsa da sorun olmaz düşüncesindeyim.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Benim uslüp hatam yok.Benim hatamı kontrol etmek sizemi kalmış.
Bundan sonrada benden size kod yardımı yok.
 
Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Beyefendi eğer bilgi paylaşım yapıyorsanız eleştiriyede açıksınız demektir. Unutmayınki ne tek siz varsınız bu forumda ne de ben. Bu forumda bilgi(leri)nizden yararlanan bi çok insan var.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ben bilgi paylaşımını zevkle yapıyorum.Mesaj sayıma bakarak bu işi ne kadar çok sevdiğimi görebilirsiniz.Yeterki insanlar asabımızı bozup şevkimizi kırmasınlar.:cool:
 
Katılım
7 Ağustos 2007
Mesajlar
328
Excel Vers. ve Dili
excell 2003 - 2007
Benim amacım ne sizi kırmak ne de bir başka arkadaşı, yetersiz olan bilgimden dolayı sizlerin yardım almaya çalışıyorum.
 
Üst