2 FORMÜL SORUNU

Katılım
2 Ocak 2025
Mesajlar
4
Excel Vers. ve Dili
Office 365 Türkçe
Herkese selamlar. Excelde öğrencilerimin performans notları için bir tablo oluşturuyorum. İki noktada takıldım.
1- Bir hücreye yazacağım herhangi bir sayıyı 2 ile çarpıp sonucu aynı hücreye yazma formülü
2- Bir hücreye 0-24 arası girersem 0, 25-49 arası girersem 5, 50-70 arası girersem 10 sonucunu aynı hücreye yazma formülünü nasıl yazacağımı bilemedim. Yardımcı olabilir misiniz?
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
107
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
Ayni hucreye yazma derken neyi kastediyorsunuz. Örneğin siz A1 e 25 yazdiniz. Daha sonra A1 in 50 olmasını istiyorsunuz.
 

ccuneyt13

Altın Üye
Katılım
20 Ocak 2011
Mesajlar
442
Excel Vers. ve Dili
Office 365 Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
01-11-2026
Merhaba,
VBA ile yapmak isterseniz,

  1. Excel'de Alt + F11 tuşlarına basarak VBA editörünü açın.
  2. Sol taraftaki proje gezgininde, kodu uygulamak istediğiniz sayfaya çift tıklayın (örneğin, "Sayfa1"). Yada ilgili sayfaın üstüne sağ tıklayıp Kodu Görüntüle deyin.
  3. Aşağıdaki kodu sayfanın açılan kod penceresine yapıştırın:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim cell As Range
    Application.EnableEvents = False
  
    ' A sütunu için koşullar
    If Not Intersect(Target, Range("A2:A1000")) Is Nothing Then
        For Each cell In Intersect(Target, Range("A2:A1000"))
            If cell.Value = "" Then
                ' Hücre boş bırakılır
            ElseIf cell.Value < 25 Then
                cell.Value = 0
            ElseIf cell.Value < 50 Then
                cell.Value = 5
            ElseIf cell.Value >= 50 Then
                cell.Value = 10
            End If
        Next cell
    End If
  
    ' B sütunu için çarpma işlemi
    If Not Intersect(Target, Range("B2:B1000")) Is Nothing Then
        For Each cell In Intersect(Target, Range("B2:B1000"))
            If cell.Value = "" Then
                ' Hücre boş bırakılır
            Else
                cell.Value = cell.Value * 2
            End If
        Next cell
    End If
  
    Application.EnableEvents = True
End Sub
Kendi sayfanıza göre hangi hücre aralığına 0-5-10 yazacak, hangi hücrelere değer girdiğiniz de 2 ile çarpacak

şu satırlarda ayarlayabilirsiniz.

0-5-10 yazılacak hücre aralığı;

If Not Intersect(Target, Range("A2:A1000")) Is Nothing Then
For Each cell In Intersect(Target, Range("A2:A1000"))

2 ile çarpılacak hücre aralığı;

If Not Intersect(Target, Range("B2:B1000")) Is Nothing Then
For Each cell In Intersect(Target, Range("B2:B1000"))

Daha sonra Dosyanızı farklı kaydet yapıp "Makro İçerebilen Excel Çalışma Sayfası" olarak kaydedin.

Aşağıda denemeniz için örnek dosya linki paylaşıyorum.

 
Katılım
2 Ocak 2025
Mesajlar
4
Excel Vers. ve Dili
Office 365 Türkçe
Zaman ayırdığınız ve değerli bilgilerinizi paylaştığınız için teşekkür ederim. VBA kullanmadan yöntemi varsa onu da öğrenmek isterim.
 

ccuneyt13

Altın Üye
Katılım
20 Ocak 2011
Mesajlar
442
Excel Vers. ve Dili
Office 365 Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
01-11-2026
Aynı hücreye hem formül hem değer girmek mümkün değil bana göre ama farklı bilgisi olan arkadaşlar olabilir belki.
A hücresine girip B hücresine isteseniz kolay ama açıkcası VBA dışında olabilir mi bende merak ettim.
Saygılar.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,521
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Makro olmadan şöyle bir çözüm yolu izleyebilirsiniz.

Tablonuzu klonlarsınız.
İlk tabloya bahsettiğiniz sayısal değerleri girersiniz.
Klon tabloda ise formülle istediğiniz sonucu gösterebilirsiniz.

Yani bir adet veri girişi alanı ile bir adet sonuç alanı (rapor) tablonuz olacak şekilde ayarlayarak kullanabilirsiniz.

Varsayımlar;
Sayfa1 (manuel veri girişi sayfa adı)
Sayfa2 (formülle hesaplama yapılacak sayfa adı)
1. satırlar başlık olsun..

A sütununda öğrenci isimleri olsun...
B sütununda ise not girişleri olsun...

İlk talebiniz için;

='Sayfa1'!B2*2


İkinci talebiniz için;

=DÜŞEYARA(Sayfa1!B2;{0;0\25;5\50;10};2;1)
 
Katılım
2 Ocak 2025
Mesajlar
4
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba,

Makro olmadan şöyle bir çözüm yolu izleyebilirsiniz.

Tablonuzu klonlarsınız.
İlk tabloya bahsettiğiniz sayısal değerleri girersiniz.
Klon tabloda ise formülle istediğiniz sonucu gösterebilirsiniz.

Yani bir adet veri girişi alanı ile bir adet sonuç alanı (rapor) tablonuz olacak şekilde ayarlayarak kullanabilirsiniz.

Varsayımlar;
Sayfa1 (manuel veri girişi sayfa adı)
Sayfa2 (formülle hesaplama yapılacak sayfa adı)
1. satırlar başlık olsun..

A sütununda öğrenci isimleri olsun...
B sütununda ise not girişleri olsun...

İlk talebiniz için;

='Sayfa1'!B2*2


İkinci talebiniz için;

=DÜŞEYARA(Sayfa1!B2;{0;0\25;5\50;10};2;1)
Merhaba. Zaman ayırıp bilgilerinizi paylaştığınız için teşekkür ederim. Sanırım bunun üzerine çalışacağım.
 
Üst