Çözüldü Formülü Makroya Çevirme Hakkında.

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Merhabalar,

Aşağıda yer alan formülleri makro ile yapmamız mümkün mü ?

Formül 1 = "=ETOPLA(DepoGırıs!$B$2:$B$300000;A3;DepoGırıs!$C$2:$C$300000)" (formül C3 hücresinde ve aşağıya doğru çekilmekte)
Formül 2= "=ETOPLA(Depocıkıs!$B$2:$B$300000;A3;Depocıkıs!$C$2:$C$300000)" (formül D3 hücresinde ve aşağıya doğru çekilmekte)
Formül 3 = "=C3-D3" (formül E3 hücresinde ve aşağıya doğru çekilmekte)
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Merhaba,
Formül 1 ve 2 için forumda bulmuş olduğum aşağıdaki kodu uyarlamaya çalıştım ama olmadı:-(

Kod:
Sub Pivot_Table()
    Dim Son As Long

    With Sheets("genel stok").Range("M3:M" & Son)
        .Formula = "=SUMIF(Depogırıs!$B$2:$B$1500,A3,Depogırıs!$C$2:$C$1500)"
        .Value = .Value
    End With

    With Sheets("Sayfa11").Range("D3:D" & Son)
        .Formula = "=SUMIF(Depocıkıs!$B$2:$B$1500,A3,Depocıkıs!$C$2:$C$1500)"
        .Value = .Value
    End With

 
End Sub
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
İlk önce siz formül koymak mı yoksa değerleri getirmek mi istiyorsunuz?
Ayrıca Formülde C$2:$C$300000 aralığında işlem yaparken siz (formül C3 hücresinde ve aşağıya doğru çekilmekte) demişsiniz.
Örnek dosya olmayınca benim hayal gücüm çalışıyor. Kafamda bir sürü senaryo oluşuyor.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
İlk önce siz formül koymak mı yoksa değerleri getirmek mi istiyorsunuz?
Ayrıca Formülde C$2:$C$300000 aralığında işlem yaparken siz (formül C3 hücresinde ve aşağıya doğru çekilmekte) demişsiniz.
Örnek dosya olmayınca benim hayal gücüm çalışıyor. Kafamda bir sürü senaryo oluşuyor.
Haklısınız Erkan bey, öncelikle ilginiz için teşekkür ederim. Örnek dosyam ekte yer almaktadır. Dosya içindeki "genel stok" sayfasında yer alan sütunlardaki formülleri makro olarak yapmak istemiştim.
 

Ekli dosyalar

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Şöyle bir şeymi istiyorsunuz. Güncelle deyince değerleri getirsin. Formülle uğraşmayalım.
Burada iki durum var. Ben listede gördüğüm için genel sayfasındaki listeye göre bir kod karalaması yaptım.
O sayfada liste yok kendi oluştursun derseniz kodlamayı değiştirmek lazım.
Şu sıra yoğunluğum nedeniyle fırsat buldukça bakabiliyorum.
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,916
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Kod:
Sub test()
    Dim Say As Long
    Say = Cells(Rows.Count, "C").End(xlUp).Row
    Range("C3:C" & Say).Formula = "=SUMIF(Depogırıs!B:B,A3,Depogırıs!C:C)"
    Range("D3:D" & Say).Formula = "=SUMIF(Depocıkıs!B:B,A3,Depocıkıs!C:C)"
    Range("E3:E" & Say).Formula = "=C3-D3"
    Range("C3:E" & Say).Value = Range("C3:E" & Say).Value
End Sub
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Şöyle bir şeymi istiyorsunuz. Güncelle deyince değerleri getirsin. Formülle uğraşmayalım.
Burada iki durum var. Ben listede gördüğüm için genel sayfasındaki listeye göre bir kod karalaması yaptım.
O sayfada liste yok kendi oluştursun derseniz kodlamayı değiştirmek lazım.
Şu sıra yoğunluğum nedeniyle fırsat buldukça bakabiliyorum.
Erkan bey ilginiz ve emeğiniz için çok teşekkür ederim. Evet aslında kısmen de olsa dediğim şekilde veriler güncellenebiliyor. Makro ile alakalı üst düzey bilgim maalesef ki yok:-( O yüzden yazmış olduğunuz kodları başka başka sayfalarımda olduğu için oralara uyarlayamadım:-(
O açıdan Sayın Muzaffer beyin yazmış olduğu kodlar benim için daha sade olduğundan diğer başka sayfalarıma uyarlamada sorun yaşamadım. O açıdan tekrar tekrar ilginiz için çok teşekkür eder saygılarımı sunarım.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Merhaba.

Kod:
Sub test()
    Dim Say As Long
    Say = Cells(Rows.Count, "C").End(xlUp).Row
    Range("C3:C" & Say).Formula = "=SUMIF(Depogırıs!B:B,A3,Depogırıs!C:C)"
    Range("D3:D" & Say).Formula = "=SUMIF(Depocıkıs!B:B,A3,Depocıkıs!C:C)"
    Range("E3:E" & Say).Formula = "=C3-D3"
    Range("C3:E" & Say).Value = Range("C3:E" & Say).Value
End Sub
Muzaffer bey,
İstemiş olduğum eylemi tamamen sağlıyor bu kodlar, teşekkür ederim desteğiniz için.
Yalnız küçük bir noktada eksik anlatmamdan kaynaklı bir sorun yaşıyorum. Şöyle ki;
Yazmış olduğunuz kodları işlem yapılacak sayfada yaptığımda hiç bir sorun yaşamıyorum gayet güzel çalışıyor. Fakat bu kodu (Sub test) başka bir sayfada başka bir kodun altına yerleştirip yaptığımda o sayfada işlem sağlıyor :-(
Özet olarak yazmam gerekirse , "Sub test" kodu "genel stok" sayfasında işlem yapsa yani ben bu kodu başka bir sayfadaki butona atadığımda dahi kod işlemi "genel stok" sayfasında yapsa.
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Erkan bey ilginiz ve emeğiniz için çok teşekkür ederim. Evet aslında kısmen de olsa dediğim şekilde veriler güncellenebiliyor. Makro ile alakalı üst düzey bilgim maalesef ki yok:-( O yüzden yazmış olduğunuz kodları başka başka sayfalarımda olduğu için oralara uyarlayamadım:-(
O açıdan Sayın Muzaffer beyin yazmış olduğu kodlar benim için daha sade olduğundan diğer başka sayfalarıma uyarlamada sorun yaşamadım. O açıdan tekrar tekrar ilginiz için çok teşekkür eder saygılarımı sunarım.
Anlıyorum. Vaktim olsa dosyanızın tamamı hakkında yardımcı olurdum. Maalesef işlerim nedeniyle uzun işlerle fazla ilgilenemiyorum. Geri dönüşünüz için teşekkürler.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,916
Excel Vers. ve Dili
2019 Türkçe
Muzaffer bey,
İstemiş olduğum eylemi tamamen sağlıyor bu kodlar, teşekkür ederim desteğiniz için.
Yalnız küçük bir noktada eksik anlatmamdan kaynaklı bir sorun yaşıyorum. Şöyle ki;
Yazmış olduğunuz kodları işlem yapılacak sayfada yaptığımda hiç bir sorun yaşamıyorum gayet güzel çalışıyor. Fakat bu kodu (Sub test) başka bir sayfada başka bir kodun altına yerleştirip yaptığımda o sayfada işlem sağlıyor :-(
Özet olarak yazmam gerekirse , "Sub test" kodu "genel stok" sayfasında işlem yapsa yani ben bu kodu başka bir sayfadaki butona atadığımda dahi kod işlemi "genel stok" sayfasında yapsa.
O zaman aşağıdaki kodu kullanın.
Kod:
Sub test()
    Dim Say As Long
    With Worksheets("genel stok")
        Say = .Cells(Rows.Count, "C").End(xlUp).Row
        .Range("C3:C" & Say).Formula = "=SUMIF(Depogırıs!B:B,A3,Depogırıs!C:C)"
        .Range("D3:D" & Say).Formula = "=SUMIF(Depocıkıs!B:B,A3,Depocıkıs!C:C)"
        .Range("E3:E" & Say).Formula = "=C3-D3"
        .Range("C3:E" & Say).Value = Range("C3:E" & Say).Value
    End With
End Sub
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
O zaman aşağıdaki kodu kullanın.
Kod:
Sub test()
    Dim Say As Long
    With Worksheets("genel stok")
        Say = .Cells(Rows.Count, "C").End(xlUp).Row
        .Range("C3:C" & Say).Formula = "=SUMIF(Depogırıs!B:B,A3,Depogırıs!C:C)"
        .Range("D3:D" & Say).Formula = "=SUMIF(Depocıkıs!B:B,A3,Depocıkıs!C:C)"
        .Range("E3:E" & Say).Formula = "=C3-D3"
        .Range("C3:E" & Say).Value = Range("C3:E" & Say).Value
    End With
End Sub
Muzaffer bey, gayet güzel ve istediğim şekilde diğer oluşturduğum sayfalar içinde rahatça düzenleme imkanım oldu. Çok teşekkür ederim gerçekten ilginiz ve emeğiniz için. Saygılarımı sunuyorum.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Ekteki çalışmayı deneyin.
Ziynettin bey,
Sayın Muzaffer bey'in yapmış olduğu kodları istediğim şekilde düzenleme imkanım oldu ki diğer sayfalarıma uyarlayabildim. Lakin eklemiş olduğunuz dosyaya bakınca diğer kısımları da düzenlediğinizi ve topluca tek bir kod ile verilerimi ilgili yerlere aldırmışsınız. Harika olmuş emeğinize sağlık sizinde. Fakat örnek dosyamdaki verilerin alınacağı 3 sayfada verilerin hepsi (tablo başlıkları dahil) 1. satırdan başlamaktaydı. Şimdi bir düzenleme yapmam gerekti ve bu veriler 9. satıra indi :-( 1-8. satırları farklı bir ekleme yapma ihtiyacı oluştu. Bu yeni haliyle kodları çalıştırmayı denediğimde hata aldım haliyle:-(
Sayın Muzaffer bey'in kodlarını rahatça uyarlayabilmiştim fakat sizin kodları uyarlayamadım.:-( Bahsetmiş olduğum (verilerin geldiği sayfalara satırlar eklenmiş halleri) durum ile ilgili dosyam ekte yer almakta. Kusura bakmayın neden çünkü örnek dosyama göre değerlendirmiştiniz kodları, benim hatam oldu:-(
 

Ekli dosyalar

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,104
Excel Vers. ve Dili
office2010
If son > 1 Then ' 9
c = c + 1
a = s1.Range("A1:J" & son).Value ' 9


Kod satırında kırmızı rakamları 9 olarak uyarlamanız yeterli.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
If son > 1 Then ' 9
c = c + 1
a = s1.Range("A1:J" & son).Value ' 9


Kod satırında kırmızı rakamları 9 olarak uyarlamanız yeterli.
Ziynettin bey,
Harika oldu çok teşekkür ederim ilginiz için. Saygılarımla, iyi çalışmalar diliyorum.
 
Üst