• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü karşı hesap kodu

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

batuhandl

Yeni Üye
Katılım
2 Haz 2024
Mesajlar
26
Aldığı beğeni
3
Excel V
Office 2021 TR
Konu Sahibi
Merhabalar,

Aşağıda yer alan veride 'karşı hesap' sütununu nasıl formüle edebilirim ? Amaç aynı ''yevmiye numarasına'' sirayet eden ''kebir'' numarasını yazmak. Birden fazla olması da önemli (son satırdaki gibi).
kebirtarihy. NoaçıkalamaborçalacakKarşı Hesap
100​
2.06.2024​
1001​
10.000,00​
0,00​
500​
500​
2.06.2024​
1001​
0,00​
10.000,00​
100​
153​
3.06.2024​
1002​
3.000,00​
0,00​
100​
100​
3.06.2024​
1002​
0,00​
3.000,00​
153​
102​
4.06.2024​
1003​
4.000,00​
0,00​
100​
100​
4.06.2024​
1003​
0,00​
4.000,00​
102​
102​
5.06.2024​
1004​
2.000,00​
0,00​
600​
600​
5.06.2024​
1004​
0,00​
2.000,00​
102​
193​
5.06.2024​
1004​
400,00​
0,00​
600,102​
 
Çözüm
Evet istediğim tam olarak bu ama makro kodlarına nasıl ulaşacağımı ve başka çalışma sayfasına nasıl uygulayacağımı yapamadım :(
Bu VBA kodunu Excel'in bir çalışma sayfasına eklemen gerekiyor. İşte adım adım nasıl yapabileceğin:

  1. Excel dosyanda, çalışma sayfası üzerinde değişiklik yapmak istediğin zaman bu kodların çalışmasını istiyorsan, kodları o çalışma sayfasının VBA modülüne eklemelisin. Bunun için aşağıdaki adımları izleyebilirsin:
    • Excel dosyanda, klavyeden Alt + F11 tuşlarına basarak Visual Basic for Applications (VBA) penceresini aç.
    • Sol tarafta "Project - VBAProject" altında, çalışma sayfasının adını içeren bir düğme göreceksin (örneğin "Sayfa1(Sayfa1)" gibi. Bu düğmeyi çift tıkla, ardından açılan...
Konu Sahibi
1025.06.202410042.000,000,00600
6005.06.202410040,002.000,00102
1935.06.20241004400,000,00600,102

1-) 1004 numaralı yevmiye kaydında Borç - Alacak eşitliği yok. Bu kaydın doğru olduğuna emin miyiz?
2-) Yine aynı numaralı yevmiye kaydında 102 nin karşlığı 600 yazdık orada problem yok fakat 600'ün karşılığının sadece 102 olup 193 olmadığını nasıl tespit edeceğiz? (Ya da siz örnek yazarken hata mı yaptınız?)

Ayrıca makro kullanıp kullanamayacağıma cevap vermediniz.
2. soru için örnekte ben hata yapmışım. revize örnek hali ektedir.
1. Borç alacak eşitliğinin önemi yok örnek için oluşturdum.

Makro olamaması daha iyi.
 
2. soru için örnekte ben hata yapmışım. revize örnek hali ektedir.
1. Borç alacak eşitliğinin önemi yok örnek için oluşturdum.

Makro olamaması daha iyi.

Formül benim uzmanlık alanım değil, fakat kullanıcı tanımlı fonksiyon kullanabiliyorsanız bunun için fonksiyon yazabiliriz.
 
Eğer KTF kullanmak isterseniz aşağıdaki formül işinize yarar.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Ayrıca her çalışma kitabından erişebileceğiniz KTF eklemeyi bilmiyorsanız
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
bir örneğine bakabilirsiniz.
 
Belki de beklenen çözüm böyle bir şey...
Excel2021 kullanıcısı olduğunuzdan, Excel2021 işlevleri kullanılarak
Alternatif olarak
Formülle bir çözüm örneği olsun...

Çözüm resimdeki gibi...

1717423331572.png

Formülü H2 hücresine yazın ve aşağıya doğru kopyalayın...
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Formülde, a parametresi $A$2:$A$10000 ve c parametresi $C$2:$C$10000 aralıklarını belirtir. Bu aralıkları orijinal dosyanıza göre uyarlarsınız. Kural ise her iki alandaki satır adetlerinin eşit miktarda olması...
 
Konu Sahibi
Belki de beklenen çözüm böyle bir şey...
Excel2021 kullanıcısı olduğunuzdan, Excel2021 işlevleri kullanılarak
Alternatif olarak
Formülle bir çözüm örneği olsun...

Çözüm resimdeki gibi...

Ekli dosyayı görüntüle 26158

Formülü H2 hücresine yazın ve aşağıya doğru kopyalayın...
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Formülde, a parametresi $A$2:$A$10000 ve c parametresi $C$2:$C$10000 aralıklarını belirtir. Bu aralıkları orijinal dosyanıza göre uyarlarsınız. Kural ise her iki alandaki satır adetlerinin eşit miktarda olması...
hocam sanırsam 2016 benim excel ondan let formülü çalışmıyor galiba
 
İstediğiniz durum resimde ki gibi ise dosyadaki formül ve makro bu işlemi yapıyor
 
2019 versiyonunda çalışır mı bilmem ama alternatif olarak aşağıdaki formülü de deneyebilirsiniz.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Evet istediğim tam olarak bu ama makro kodlarına nasıl ulaşacağımı ve başka çalışma sayfasına nasıl uygulayacağımı yapamadım :(
Bu VBA kodunu Excel'in bir çalışma sayfasına eklemen gerekiyor. İşte adım adım nasıl yapabileceğin:

  1. Excel dosyanda, çalışma sayfası üzerinde değişiklik yapmak istediğin zaman bu kodların çalışmasını istiyorsan, kodları o çalışma sayfasının VBA modülüne eklemelisin. Bunun için aşağıdaki adımları izleyebilirsin:
    • Excel dosyanda, klavyeden Alt + F11 tuşlarına basarak Visual Basic for Applications (VBA) penceresini aç.
    • Sol tarafta "Project - VBAProject" altında, çalışma sayfasının adını içeren bir düğme göreceksin (örneğin "Sayfa1(Sayfa1)" gibi. Bu düğmeyi çift tıkla, ardından açılan pencerede VBA kodlarını yazabileceğin çalışma sayfasının modülü açılacaktır.
  2. Bu modülde, açılan pencerede sol üstten "Insert" menüsünü seç ve ardından "Module" seçeneğine tıkla. Bu, yeni bir VBA modülü oluşturmanı sağlar.
  3. Yeni oluşturduğun modülün içine, verdiğin VBA kodunu yapıştır. Kodun, Private Sub Worksheet_Change(ByVal Target As Range) ve Sub KarsiHesap() olmak üzere iki bölümden oluşuyor, bu bölümleri değişiklik yapmak istediğin (Örnek dosyada MAKROYLA yazan sayfa) çalışma sayfasının VBA modülüne yapıştır.
  4. Kodun çalışabilmesi için, kodun içinde bulunan "MAKROYLA" kelimesini, kullanmak istediğin çalışma sayfasının adıyla değiştirmelisin. Örneğin, eğer kodunun çalışma sayfasının adı "Sayfa1" ise, Set ws = ThisWorkbook.Sheets("MAKROYLA") satırını Set ws = ThisWorkbook.Sheets("Sayfa1") olarak değiştirmelisin.
  5. Kodları ekledikten sonra, VBA penceresini kapatıp Excel'e dön. Artık çalışma sayfasındaki "G1" hücresinde bir değer değiştiğinde KarsiHesap adlı alt programın çağrılacak.
Bu adımları takip ederek, verdiğin VBA kodunu Excel dosyanda belirttiğin çalışma sayfasında kullanabilirsin. Eğer başka bir çalışma sayfasında kullanmak istersen, o çalışma sayfasının adını ve hedef hücreyi (Me.Range("G1") içindeki "G1" hücresi) değiştirmelisin.


HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Çözüm
Konu Sahibi
Bu VBA kodunu Excel'in bir çalışma sayfasına eklemen gerekiyor. İşte adım adım nasıl yapabileceğin:

  1. Excel dosyanda, çalışma sayfası üzerinde değişiklik yapmak istediğin zaman bu kodların çalışmasını istiyorsan, kodları o çalışma sayfasının VBA modülüne eklemelisin. Bunun için aşağıdaki adımları izleyebilirsin:
    • Excel dosyanda, klavyeden Alt + F11 tuşlarına basarak Visual Basic for Applications (VBA) penceresini aç.
    • Sol tarafta "Project - VBAProject" altında, çalışma sayfasının adını içeren bir düğme göreceksin (örneğin "Sayfa1(Sayfa1)" gibi. Bu düğmeyi çift tıkla, ardından açılan pencerede VBA kodlarını yazabileceğin çalışma sayfasının modülü açılacaktır.
  2. Bu modülde, açılan pencerede sol üstten "Insert" menüsünü seç ve ardından "Module" seçeneğine tıkla. Bu, yeni bir VBA modülü oluşturmanı sağlar.
  3. Yeni oluşturduğun modülün içine, verdiğin VBA kodunu yapıştır. Kodun, Private Sub Worksheet_Change(ByVal Target As Range) ve Sub KarsiHesap() olmak üzere iki bölümden oluşuyor, bu bölümleri değişiklik yapmak istediğin (Örnek dosyada MAKROYLA yazan sayfa) çalışma sayfasının VBA modülüne yapıştır.
  4. Kodun çalışabilmesi için, kodun içinde bulunan "MAKROYLA" kelimesini, kullanmak istediğin çalışma sayfasının adıyla değiştirmelisin. Örneğin, eğer kodunun çalışma sayfasının adı "Sayfa1" ise, Set ws = ThisWorkbook.Sheets("MAKROYLA") satırını Set ws = ThisWorkbook.Sheets("Sayfa1") olarak değiştirmelisin.
  5. Kodları ekledikten sonra, VBA penceresini kapatıp Excel'e dön. Artık çalışma sayfasındaki "G1" hücresinde bir değer değiştiğinde KarsiHesap adlı alt programın çağrılacak.
Bu adımları takip ederek, verdiğin VBA kodunu Excel dosyanda belirttiğin çalışma sayfasında kullanabilirsin. Eğer başka bir çalışma sayfasında kullanmak istersen, o çalışma sayfasının adını ve hedef hücreyi (Me.Range("G1") içindeki "G1" hücresi) değiştirmelisin.


HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
çok teşekkür ederim
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst