• DİKKAT

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

Formüllerin makroya çevirilmesi

Katılım
17 Ekim 2011
Mesajlar
490
Excel Vers. ve Dili
Excel 2003 - Türkçe
Selamlar;

aşağıdaki formüllerimin makro olmasını
istiyorum. kendim çok uğraşmama rağmen
maalesef yapamadım. yardımcı olacak arkadaşlara
şimdiden teşekkür ederim.
 
Son düzenleme:
Merhaba,

Bu formül işlem yapıyor mu!?
 
Merhaba
Bu formüllerim çalıştığı dosyayı gönderebilir misiniz.
 
Selamlar;

Herkese iyi günler.

Mahir Bey, Asi Kral
alakanız için teşekkür ederim.
Değerli üstadlar.

dosyayı ekledim.
 
Son düzenleme:
Selamlar;

Herkese iyi günler.

Mahir Bey, Asi Kral
alakanız için teşekkür ederim.
Değerli üstadlar.

dosyayı ekledim.

Merhaba
Özel mesajınıza istinaden bu saatte konu ile ilgilenme fırsatı yakaladım.
Boş bir module
Kod:
Option Explicit
Sub formüller_makroya()
'Konu       :   Formülleri Makroya Terfi Ettirme
'Mail       :   m.batu.1967@gmail.com
'Msn        :   m.batu.1967@hotmail.com.tr
'Skype      :   m.batu.1967
'Coder By   :   asi_kral_1967
Dim asi As Long
For asi = 6 To Cells(2222, "I").End(xlUp).Row
Cells(asi, "J") = WorksheetFunction.Choose(Cells(asi, "I"), "Bir", "İki", "Üç", "Dört", "Beş", _
"Altı", "Yedi", "Sekiz", "Dokuz", "On", "Onbir", "Oniki", "Onüç", "Ondört", "Onbeş", "Onaltı")
If Cells(asi, "I") > 4 Then
Cells(asi, "O") = 444
Else
Cells(asi, "O") = 0
End If: Next
End Sub
Bu kodu kopyalayın ve deneyin.
 
Merhaba
Özel mesajınıza istinaden bu saatte konu ile ilgilenme fırsatı yakaladım.
Boş bir module
Kod:
Sayın Asi Kral 1967 verdiğim rahatsızlık için birkez daha özür dilerim
yaptığınız formül içinde teşekkür ederim.

Formülümüzde noksanlar var.
H sütunundaki "Müsait" verimiz koşul idi işlenmemiş.
O sütununa gelecek formülde 444 ibaresi değişkendir.
normalinde şartlar yerine geldiğinde M sütunundaki değeri alması lazım.
gibi gibi hatalar var.

Tabii bu benim eklediğim dosyadan kaynaklıdır.

buna sebep olarak tekrar yeni bir dosya hazırladım.


Değerli üstadlar lütfen elinizden geliyorsa yardımlarınızı esirgemeyiniz.
Sevgi ve saygılar sunuyorum. 

Dosyada ince detaylarına kadar anlattım.
Anlaşılmayan bir şey olursa yine yazarım. 
Uyku haricinde gün boyu forumdayım.
Hoşçakalın.
 
Sayın Numan Şamil

teşekkür ederim ellerinize sağlık.

formül bulunduğu satır itibari ile kusursuz. Herşey tamam çalışıyor.

Yanlız A sütunundaki makromuzla kopya ve taşıma yaptığımızda da (0 satırı bir altına kopyalıyor
1 ise satırı içinde değer bulunan satırın en altına taşıyor)

formüllerimizin alt satırlarda da işlemesi lazım taa ki 2222 lere kadar.
bunu da yapabilirsek şayet on numara olacak hayırlısı ile.
Bu mümkün olur inşallah.
 
Sayın Numan Şamil

teşekkür ederim ellerinize sağlık.

formül bulunduğu satır itibari ile kusursuz. Herşey tamam çalışıyor.

Yanlız A sütunundaki makromuzla kopya ve taşıma yaptığımızda da (0 satırı bir altına kopyalıyor
1 ise satırı içinde değer bulunan satırın en altına taşıyor)

formüllerimizin alt satırlarda da işlemesi lazım taa ki 2222 lere kadar.
bunu da yapabilirsek şayet on numara olacak hayırlısı ile.
Bu mümkün olur inşallah.

Merhaba
benim verdiğim kodu bununla
Kod:
Option Explicit
Sub formüller_makroya()
'Konu       :   Formülleri Makroya Terfi Ettirme
'Mail       :   m.batu.1967@gmail.com
'Msn        :   m.batu.1967@hotmail.com.tr
'Skype      :   m.batu.1967
'Coder By   :   asi_kral_1967
Dim asi As Long
For asi = 6 To Cells(2222, "I").End(xlUp).Row
If Cells(asi, "I") <> "" Then
Cells(asi, "J") = WorksheetFunction.Choose(Cells(asi, "I"), "Bir", "İki", "Üç", "Dört", "Beş", _
"Altı", "Yedi", "Sekiz", "Dokuz", "On", "Onbir", "Oniki", "Onüç", "Ondört", "Onbeş", "Onaltı")
If Cells(asi, "H") = "Müsait" And Cells(asi, "I") < 5 Then
Cells(asi, "O") = Cells(asi, "M").Value
Else
Cells(asi, "O") = 0
End If: End If: Next
End Sub
Sizin sayfadaki kodu
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A6:A2222]) Is Nothing Then Exit Sub
If Cells(Target.Row, 1).Value = 0 Then
Rows(Target.Row + 1).Insert
Range(Cells(Target.Row, 3), Cells(Target.Row, 15)).Copy
Cells(Target.Row + 1, 3).PasteSpecial
Application.CutCopyMode = False
Cells(Target.Row, 1).Select
ElseIf Cells(Target.Row, 1).Value = 1 Then
sonsat = Cells(Rows.Count, 8).End(3).Row + 1
Range(Cells(Target.Row, 3), Cells(Target.Row, 15)).Copy
Cells(sonsat, 3).PasteSpecial
Range(Cells(Target.Row, 3), Cells(Target.Row, 15)).ClearContents
Application.CutCopyMode = False
End If
End Sub
Bununla değiştirip dener misiniz.
Dosyanız Ekte.
 

Ekli dosyalar

Sayın Asi Kral

kopyalamayı şuursuzca rastgele yapıyor
kopyala(sıfır) dediğim zaman 200 lere götürüyor
oysaki dolu satırın hemen altına götürmesi lazım
bir zahmet bakabilirmisiniz acaba
taşımada(bir) sorun yok. O narmol çalışıyor.

Birde çalıştır butonu olmadan olurmu acaba direkt
verileri girdiğimiz zaman makro çalışmazmı?
 
Sayın Asi Kral

kopyalamayı şuursuzca rastgele yapıyor
kopyala(sıfır) dediğim zaman 200 lere götürüyor
oysaki dolu satırın hemen altına götürmesi lazım
bir zahmet bakabilirmisiniz acaba
taşımada(bir) sorun yok. O narmol çalışıyor.

Birde çalıştır butonu olmadan olurmu acaba direkt
verileri girdiğimiz zaman makro çalışmazmı?

Hangi sütuna işlem yaptığınızda makro çalışsın.
Kopyalamadaki sorun şu : son dolu hücreye baktığından eğerki baktığı sütundaki son dolu hücre oradaysa ona göre işlem yapar.
 
Sayın Numan Şamil

teşekkür ederim ellerinize sağlık.

formül bulunduğu satır itibari ile kusursuz. Herşey tamam çalışıyor.

Yanlız A sütunundaki makromuzla kopya ve taşıma yaptığımızda da (0 satırı bir altına kopyalıyor
1 ise satırı içinde değer bulunan satırın en altına taşıyor)

formüllerimizin alt satırlarda da işlemesi lazım taa ki 2222 lere kadar.
bunu da yapabilirsek şayet on numara olacak hayırlısı ile.
Bu mümkün olur inşallah.

Merhaba
Yanlız A sütunundaki makromuzla kopya ve taşıma yaptığımızda da (0 satırı bir altına kopyalıyor
1 ise satırı içinde değer bulunan satırın en altına taşıyor)
Kısmını anlayamadım
6.satır ile2222 satırda formül işi tamam
Ekli dosyayı incelermisiniz
 

Ekli dosyalar

Sayın Asi Kral;

* Kopyalama sorununu tekrar test ettim kastınız aşağılarda dolu hücre var ise şayet;
formülleri alıp yeni bir sayfada denedim. 1 de sorun yok lakin 0 a bastığımız zaman
sanki hücreleri sayıyor gibi aşağılara gidyor geri geliyor. kopyayı yerine yapıyor ama dediğim
gibi titreme gibi bişeyler oluyor. Sizde test ederseniz şayet görürsünüz.

* Makronun butonsuz çalışması ise;
I sütununa değer girdiğimiz zaman J sütunu direkt aktif olsun
H sütununa girdiğimiz zamanda O sütunu aktif olsun.
 
Sayın Numan Şamil bey

Değerli hemşehrim :)

O sütununa sıfır (0) değerleri yazmak zorunda değil.
sanırım bununla alakalı olarak taşıma işleminde sorun çıkıyor
A sütununda bir (1) e bastığım zaman 1004 hatası veriyor.

Birde sizden istirhamım. Lütfen mazur görünüz.
Ekli dosyamda belirttiğim gibi çalışmamın bitmiş bir şablonu yok.
Bir taraftan çalışıp bir taraftan formül üretmek zorundayım.
dolayısı ile 2 formüle ihtiyacım var.

1. Formül.

Sub formul2()
For i = 6 To 2222
If Range("I" & i).Value > 5 And Range("H" & i).Value = "Müsait" Then
Range("O" & i).Value = Range("M" & i).Value
Else
Range("O" & i).Value = 0

bunun tam tersi yani <5 durumunda uygulayacağız uygulayacağımız Sütun P sütunu olsun.

2. Formül ise M sütunundaki değeri K sütunundaki değere böleceğiz ve çıkan sonuca 5 ilave edeceğiz

yani M bölü K + 5 şeklinde olacak.
yine çalışma şekilleri diğer sütunlar ile aynı olacak.
olursa şayet çok sevinirim

Makronun butonsuz çalışma için ise:
* Makronun butonsuz çalışması ise;
I sütununa değer girdiğimiz zaman J sütunu direkt aktif olsun
H sütununa girdiğimiz zamanda O sütunu aktif olsun.
yine H sütununa değer girdiğimiz zaman P sütunu aktif olsun
 
Son düzenleme:
Sayın Numan Şamil bey

Değerli hemşehrim :)

O sütununa sıfır (0) değerleri yazmak zorunda değil.
sanırım bununla alakalı olarak taşıma işleminde sorun çıkıyor
A sütununda bir (1) e bastığım zaman 1004 hatası veriyor.

Birde sizden istirhamım. Lütfen mazur görünüz.
Ekli dosyamda belirttiğim gibi çalışmamın bitmiş bir şablonu yok.
Bir taraftan çalışıp bir taraftan formül üretmek zorundayım.
dolayısı ile 2 formüle ihtiyacım var.

1. Formül.

Sub formul2()
For i = 6 To 2222
If Range("I" & i).Value > 5 And Range("H" & i).Value = "Müsait" Then
Range("O" & i).Value = Range("M" & i).Value
Else
Range("O" & i).Value = 0

bunun tam tersi yani <5 durumunda uygulayacağız uygulayacağımız Sütun P sütunu olsun.

2. Formül ise M sütunundaki değeri K sütunundaki değere böleceğiz ve çıkan sonuca 5 ilave edeceğiz

yani M bölü K + 5 şeklinde olacak.
yine çalışma şekilleri diğer sütunlar ile aynı olacak.
olursa şayet çok sevinirim

Makronun butonsuz çalışma için ise:
* Makronun butonsuz çalışması ise;
I sütununa değer girdiğimiz zaman J sütunu direkt aktif olsun
H sütununa girdiğimiz zamanda O sütunu aktif olsun.
yine H sütununa değer girdiğimiz zaman P sütunu aktif olsun

2. Formül ise M sütunundaki değeri K sütunundaki değere böleceğiz ve çıkan sonuca 5 ilave edeceğiz
2. Formül Hangi sutuna uygulanacak
 
Merhaba
I sütununa değer girdiğimiz zaman J sütunu direkt aktif olsun
H sütununa girdiğimiz zamanda O sütunu aktif olsun.
yine H sütununa değer girdiğimiz zaman P sütunu aktif olsun

Hariç
Formüller
Ekli dosyayı inceleyiniz
Tamammı?
Biraz işim var
Diğer kısımlar bizi aşabilir
Zamanım olursa uğraşırım
Umarım arkadaşlarda bu konu ile ilgilenirler
 

Ekli dosyalar

Son düzenleme:
Kodlarda birdeğişiklik yapılıp bir önceki mesajdaki ekli dosya güncellendi
 
Siz nasıl isterseniz öyle Sayın Şamil.

Müsait olduğunzda ilgilenirsen ne ala yoksa yok.

Allaha emanet olun. Görüşmek üzere inşallah.
 
Geri
Üst