Useform'u şartlı açmak

Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Herkese merhaba,
F3 hücresine yazacağım sayı ile karşılığı olan ilgili Useform'u açmasını istiyorum. Bunu makro ile yapamadım.
Yardımcı olabilecek arkadaşlara şimdiden teşekkür ediyorum.

Asıl amacım gelen Useform veya popup penceresi ile çok değişkenli notlar almak istiyorum.
Bu notlar sürekli güncelleneceği için kolay bir yolu var mı acaba?
Kolay kullanılabilir başka bir uyarı penceresi gibi.

Sağlık ve huzurla,
 

Ekli dosyalar

Muzaffer Ali

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

Select case yöntemi ile yapabilirsiniz.
Kodları inceleyin.
Sayfanın kod kısmına aşağıdaki kodu kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("F3")) Is Nothing Then
        Select Case Range("F3")
            Case 1
                UserForm1.Show
            Case 2
                UserForm2.Show
            Case 3, 4
                MsgBox "3 yada 4 rakamı girildi."
            Case Else
                MsgBox "1,2,3,4' rakamlarından farklı bir değer girildi."
        End Select
    End If
End Sub
 
Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Sayın Dalgalıkur,

Ellerinize sağlık, çok teşekkür ederim.

Sağlıkla kalın.
 
Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Sayın Dalgalıkur,
Kod çalışıyor sorun yok. Ancak kullanacağım sayfanın kod kısmında 2-3 tane başka işlevli kodlar var burada hata veriyor.
Başka bir sayfa koduna yazdığımda ise sorun yok. Çözümü var mı acaba?
Saygıyla,
 
Katılım
6 Temmuz 2015
Mesajlar
926
Excel Vers. ve Dili
2003
Sayfaya 1 buton koyun, kodu butonun altına yazın. Butona basarak ilgili formu çağırın.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,363
Excel Vers. ve Dili
2019 Türkçe
Sayın Dalgalıkur,
Kod çalışıyor sorun yok. Ancak kullanacağım sayfanın kod kısmında 2-3 tane başka işlevli kodlar var burada hata veriyor.
Başka bir sayfa koduna yazdığımda ise sorun yok. Çözümü var mı acaba?
Saygıyla,
Orijinal dosyanızı eklerseniz kontrol edelim.
 
Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Sayın Dalgalıkur,
Sizi yorduğum için kusura bakmayın lütfen. Özverili çalışmanızı ve ilginiz için çok teşekkür ediyorum.

Gönderdiğiniz kod tek başına çalışıyor ancak benim kullandığım sayfanın koduna başta ilave edince hata verdi.

Ayrıca, rica etsem mevcut olan benim sayfadaki " islem " makrosuna KOD İLAVESİ yapınca hata veriyor. (Yani mevcut kod hattini aştığında) Bunu ortadan bölemedim. Ortalama 41 satır için kullandığım kodlarda hata yok. Ama örneğin 100 satır olunca hata veriyor. Galiba uygun yerden "islem" makrosu bölünmesi gerekir.

Saygı ve hürmetle.
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,363
Excel Vers. ve Dili
2019 Türkçe
Private Sub Worksheet_Change(ByVal Target As Range) ile başlayan kodların tamamını silin aşağıdakileri ekleyin

Eğer yine de hata verirse yarın bakarım.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    If Not Intersect(Target, [BS5,D11:D121]) Is Nothing Then Exit Sub
        If Target.Column = 4 Then Call SIRA_NO2
        If Target.Address(0, 0) = "BS5" Then Call işlem
    End If
    
    If Not Intersect(Target, Range("F3")) Is Nothing Then
        Select Case Range("F3")
            Case 1
                UserForm1.Show
            Case 2
                UserForm2.Show
            Case 3, 4
                MsgBox "3 yada 4 rakamı girildi."
            Case Else
                MsgBox "1,2,3,4' rakamlarından farklı bir değer girildi."
        End Select
    End If
    Application.EnableEvents = True
End Sub
 
Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Merhaba Dalgalıkur,

Yine hata veriyor. dediğiniz gibi, Private Sub Worksheet_Change(ByVal Target As Range)
ile başlayan tüm kodları sildim. Zaten onun altında bulunan otomatik sıra numarası veren kodlardır.
Onuda siz yazdığınız kodların başına eklediniz ama yine de hata veriyor.

Buton yaparak sorunu çözerim fazla zahmet etmeyiniz. Yeterince size zahmet verdim. "islem" makrosunu örn. 100 satırlık yapabilirseniz
çok memnun olurum. Fazla satır ilave ettiğimde hata veriyor.

Saygılar,
 
Katılım
22 Ekim 2012
Mesajlar
311
Excel Vers. ve Dili
Office 2016 Türkçe
Altın Üyelik Bitiş Tarihi
28-02-2023
Sayın Dalgalıkur,

İlginiz ve uğraşlarınız için, ellerinize sağlık ve çok teşekkür ediyorum.

Sağlıkla,
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,363
Excel Vers. ve Dili
2019 Türkçe
Rica ederim Kolay gelsin.
 
Üst