• DİKKAT

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

Fomül değerini kontrol edip başka bir makro çalıştırma

Katılım
3 Nisan 2010
Mesajlar
10
Excel Vers. ve Dili
2007 tr
Merhabalar,

Bana bir makro lazım ama benze bir örnek bulamadım.
Çokta anlamıyorum yardımcı olabilirseniz sevinirim.
Sayfa1 de A1,A2,A3 hücreleri formülle gelen sonuç değeri 1.

Buton çalışan bir makro istiyorum modüle eklenecek.
Bu makro önce gidecek A1 deki formülün neticesi 1 ise makro1' i çalıştıracak 1 değilse işlem yapmadan devam edip A2 hücresini kontrol edecek buradaki formül neticesi 1 ise makro2' yi çalıştırıracak 1 değilse çalıştırmadan devam edecek.
 
Merhaba.

-- Bahsettiğiniz, A1,A2 ve A3 hücrelerinin bulunduğu sayfaya bir adet şekil/metin kutusu, düğme ekleyin,
-- ALT+F11 tuşlarına basarak VBA ekranını açın ve üstteki MENÜ'den INSERT>>MODULE yi seçin,
-- Sağdaki boş alana aşağıdaki kod blokunu yapıştırın,
-- Sayfaya eklediğiniz nesneye fareyle sağ tıklayıp MAKRO ATA yı seçin,
-- Açılan küçük ekranda aşağıdaki makronun adını (MAKRO_SEC) seçerek işlemi onaylayın.
Artık bu nesneye fareyle tıkladığınızda, belirtilen hücrelerin değerlerine göre istenilen işlem gerçekleşir.

Aşağıdaki kod'da ilgili satırlarda (MAKRO1, MAKRO2, MAKRO3 yazan yerlere)
asıl makroların isimlerini olması gereken konumlara yazın.
.
Rich (BB code):
Sub MAKRO_SEC()
    If ActiveSheet.[A1] = 1 Then
        Call MAKRO1
    ElseIf ActiveSheet.[A2] = 1 Then
        Call MAKRO2
    ElseIf ActiveSheet.[A3] = 1 Then
        Call MAKRO3
    Else
        MsgBox "Hiçbir makro çalışmadı."
    End If
End Sub
 
Merhabalar,

Bana bir makro lazım ama benze bir örnek bulamadım.
Çokta anlamıyorum yardımcı olabilirseniz sevinirim.
Sayfa1 de A1,A2,A3 hücreleri formülle gelen sonuç değeri 1.

Buton çalışan bir makro istiyorum modüle eklenecek.
Bu makro önce gidecek A1 deki formülün neticesi 1 ise makro1' i çalıştıracak 1 değilse işlem yapmadan devam edip A2 hücresini kontrol edecek buradaki formül neticesi 1 ise makro2' yi çalıştırıracak 1 değilse çalıştırmadan devam edecek.
Dosyanız linktedir.

DOSYAYI INDIR

Kod:
Sub DoluÇerçeve1_Tıklat()
If Range("A1").Value = 1 Then
    Call makro1
ElseIf Range("B1").Value = 1 Then
    Call makro2
ElseIf Range("C1").Value = 1 Then
    Call makro3
End If
End Sub
 
3 nolu mesajda bende yanıt vermiştim.
Bende teşekkür isterim .:D
 
Makronun çalışmadığı basit bir örnek belge yükleyin ki bakılabilsin değil mi?
Örnek belge olmadan ne dememiz bekleniyor merak ediyorum doğrusu.

Örnek belge özellikleri ve örnek belge yükleme yöntemine ilişkin kısa açıklama cevabımın altındaki İMZA bölümünde var.
.
 
Her iki makroda da ikinci makroyu çalıştıracak hücredeki değer 1 değilse makronun devamı çalışmıyor. Üçüncü makro çalışmıyor.
3ncü makronun çalışması için c1 hücresinde 1 değerinin olması gerekiyor.:cool:
 
3ncü makronun çalışması için c1 hücresinde 1 değerinin olması gerekiyor.:cool:
Denedim hatta birinci makrodan sonrası çalışmadı sizin örnek dosyayı indirdim. Yani a1 de 1 yazıyorsa makro1 çalışıyor, ama b1 de yazsada yazmada devam etmiyor çalışmaya, Ama benim istediğim her makroyu çalıştırmadan sayfa1 seçip sayfa 1deki a1 =1 makro 1i çalıştır. Eşit değil ise içindeki formül hava veriyorsa yada boşsa onu atlayıp b1 i kontrol edip aynı şekilde 1 yazıyorsa makro2 yi çalıştırsın böyle devam etsin döngüye.
 
Denedim hatta birinci makrodan sonrası çalışmadı sizin örnek dosyayı indirdim. Yani a1 de 1 yazıyorsa makro1 çalışıyor, ama b1 de yazsada yazmada devam etmiyor çalışmaya, Ama benim istediğim her makroyu çalıştırmadan sayfa1 seçip sayfa 1deki a1 =1 makro 1i çalıştır. Eşit değil ise içindeki formül hava veriyorsa yada boşsa onu atlayıp b1 i kontrol edip aynı şekilde 1 yazıyorsa makro2 yi çalıştırsın böyle devam etsin döngüye.
Böylemi istediniz.:cool:
Kod:
If Range("A1").Value = 1 Then Call makro1
If Range("B1").Value = 1 Then Call makro2
If Range("C1").Value = 1 Then Call makro3
 
Geri
Üst