[Çözüldü]  Sayfadaki Butonun Pasif Yapılması Hk.

VBA Makrolar ile ilgili sormak istedikleriniz, yapmak istedikleriniz hakkında yardım alabileceğiniz bölümdür.

Sayfadaki Butonun Pasif Yapılması Hk.

İleti#1)  muratvural » 22 Arl 2014 20:30

Arkadaşlar Merhaba,

Userform'da değilde sayfa üzerine eklediğimiz butonların pasif yapılmasını nasıl sağlarım?
Kullanıcı avatarı
muratvural
Siteye Alışmış
 
Adı Soyadı:Murat Vural
Kayıt: 09 Mar 2010 23:45
Konum: türkiye
Meslek: istatistik
Yaş: 41
İleti: 146
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul

Cevap: Sayfadaki butonun pasif yapılması hakk.

İleti#2)  Ali ÖZ » 22 Arl 2014 20:56

Merhaba,
Bu kodu kullanabilirsiniz.

Kod: Tümünü seç
Sheets("Sayfa1").CommandButton2.Enabled = False
Kullanıcı avatarı
Ali ÖZ
Forum Moderatörü
 
Adı Soyadı:Ali ÖZ
Kayıt: 17 Oca 2013 10:16
Konum: SAKARYA
Meslek: Yazılım
Yaş: 39
İleti: 10242
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Adapazarı/SAKARYA

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#3)  muratvural » 22 Arl 2014 22:09

Ali Bey teşekkür ederim.

Eklediğiniz örnek benim için yeterli. Ancak merak ettiğimden soruyorum. Aynı yerden Form Denetimleri bölümünden eklenebilen bir buton da var.

Aşağıdaki şekilde butonun üzerindeki yazıyı değiştirebiliyorum.

Kod: Tümünü seç
Sheets("Sayfa1").Buttons("Düğme 1").Caption = "Deneme"

Ancak aynı mantıkla Enabled=False çalışmıyor. Form denetimlerinde böyle bir özellik yok mudur?
Kod: Tümünü seç
Sheets("Sayfa1").Buttons("Düğme 1").Enabled = False
Kullanıcı avatarı
muratvural
Siteye Alışmış
 
Adı Soyadı:Murat Vural
Kayıt: 09 Mar 2010 23:45
Konum: türkiye
Meslek: istatistik
Yaş: 41
İleti: 146
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#4)  Ali ÖZ » 23 Arl 2014 09:38

Merhaba,
Sayfada bulunan butonun false özelliği olmadığından commandbutton gibi pasif hale getirilemiyor.Ancak küçük bir aldatmaca yapılabilir :)

Kod: Tümünü seç
Sub pasif()
Set b1 = ActiveSheet.Buttons("Button 5")
  b1.Enabled = False
b1.Font.ColorIndex = 15
End sub
Kullanıcı avatarı
Ali ÖZ
Forum Moderatörü
 
Adı Soyadı:Ali ÖZ
Kayıt: 17 Oca 2013 10:16
Konum: SAKARYA
Meslek: Yazılım
Yaş: 39
İleti: 10242
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Adapazarı/SAKARYA

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#5)  Tarkan VURAL » 24 Arl 2014 12:23

Ali Bey' in yöntemine alternatif ilave olarak, çalışan makroyu da ortadan kaldırabilirsiniz. Ancak Enabled özelliği için ActiveX denetimi kullanmanızı öneririm.


Kod: Tümünü seç
Sub Pasif()
For 
Each bul In Sayfa1.Shapes
If bul.OLEFormat.Object.Name Like "Button*" Then
bul
.OLEFormat.Object.Font.ColorIndex 15
bul
.OnAction "Kitap1!BosMakro"
End If
Next
End Sub
 
Sub Aktif
()
For 
Each bul In Sayfa1.Shapes
If bul.OLEFormat.Object.Name Like "Button*" Then
bul
.OLEFormat.Object.Font.ColorIndex 1
bul
.OnAction "Kitap1!Düğme1_Tıklat"
End If
Next
End Sub
 
Sub Düğme1_Tıklat
()
MsgBox "Makro çalıştı"vbInformation"Www.ExcelVBA.Net"
End Sub

Sub BosMakro
()
MsgBox "Burada çalışacak bir makro yok"vbInformation"Www.ExcelVBA.Net"
End Sub
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ?
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 47
İleti: 27420
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#6)  muratvural » 25 Arl 2014 00:03

Örnekleriniz için teşekkür ederim.

Tarkan Bey,
Sayfa üzerine eklenen her nesne (Shapes vs.) OLEFormat.Object elemanı mıdır?
Kullanıcı avatarı
muratvural
Siteye Alışmış
 
Adı Soyadı:Murat Vural
Kayıt: 09 Mar 2010 23:45
Konum: türkiye
Meslek: istatistik
Yaş: 41
İleti: 146
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#7)  Tarkan VURAL » 25 Arl 2014 00:13

muratvural yazdı:Sayfa üzerine eklenen her nesne (Shapes vs.) OLEFormat.Object elemanı mıdır?

O yüzden Button mu şeklinde bir denetim yaptım. Aslen nesne adından gitmek daha doğru. Başka nesneleriniz de olabilir. ;)
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ?
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 47
İleti: 27420
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#8)  Levent145 » 14 Oca 2021 12:21

Merhaba herkese
Biraz uğraştım ama kodda hata alıyorum .
kullancı adi userformu : Form.ComboBox1 den alınıyor

Form userformunun comboBox1 de kayıtlı plan kullanıcı adı eğer KONTROL sayfasının P2:p aralığında varsa eğer tüm commandbutonları aktif et eğer kullanıcı adı uyuşmuyorsa belirtilen commandButonları sadece aktif et

Not tüm commandabutonlar ya CommanButton diye ya da başları MY olarak başlıyor ortak yanı bu.
Yardımcı olabilecek varsa çok sevinirim.
Kod: Tümünü seç
     If Worksheets("KONTROL")("P2:P") = Form.ComboBox1.Value Then

        For i = 1 To Me.Controls.Count

            If Left(Me.Controls(i).Name, 13) = "CommandButton" Or Left(Me.Controls(i).Name, 2) = "MY" Then

                Me.Controls(i).Enabled = True

            End If
        Next
Kullanıcı avatarı
Levent145
Yeni Başlamış
 
Kayıt: 09 Ağu 2020 20:51
Meslek: Memur
Yaş: 27
İleti: 84
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#9)  Miraç CAN » 14 Oca 2021 13:56

Tümünü Aktif veya Pasif yapar, deneyin:
Kod: Tümünü seç
Dim Ctrl As Object, Enbld As Boolean
If IsError(Application.VLookup(Form.ComboBox1.Value, Worksheets("KONTROL")("P:P"), 1, 0)) Then Enbld = False Else Enbld = True
For Each Ctrl In Me.Controls
    If TypeName(Ctrl) = "CommandButton" Then Ctrl.Enabled = Enbld
Next
Set Ctrl = Nothing
Kullanıcı avatarı
Miraç CAN
Site Dostu
 
Kayıt: 26 Arl 2016 19:07
Meslek: Harita/Ölçme
Yaş: 39
İleti: 1008
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Amasya & Adana

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#10)  Levent145 » 14 Oca 2021 18:26

Miraç Hocam kod çalışmadı malesef
Kod: Tümünü seç
If IsError(Application.VLookup(Form.ComboBox1.Value, Worksheets("KONTROL")("P:P"), 1, 0)) Then
bu kısımda object hatası verdi
Excel sayfası ilk açıldığında form adlı userform açılıyor combobox1de kullanıcı adı seçiliyor.
şifre giriliyor doğru ise Giriş userformu açılıyor.

Benim istediğim ise form adlı userformun combobox1deki kullanıcı adı Kontrol sayfası P2: P arasındaki isimlerden biriile uyuşuyor ise tüm commandbuttonlar aktif olsun yok uyuşmuyorsa ismini yazdığım commandbuttonlar aktif olsun

Not tüm commandabutonlar ya CommanButton diye ya da başları MY olarak başlıyor ortak yanı bu.
Yardımcı olabilecek varsa çok sevinirim.
Kullanıcı avatarı
Levent145
Yeni Başlamış
 
Kayıt: 09 Ağu 2020 20:51
Meslek: Memur
Yaş: 27
İleti: 84
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#11)  Levent145 » 14 Oca 2021 18:33

Şöyle bir kod denedim ama object hatası veriyor.
Kod: Tümünü seç
Private Sub UserForm_Initialize()
    If Form.ComboBox1.Value = Worksheets("KONTROL")("P2:P") Then

        For i = 1 To Me.Controls.Count
            If Left(Me.Controls(i).Name, 13) = "CommandButton" Or Left(Me.Controls(i).Name, 2) = "MY" Then
                Me.Controls(i).Enabled = True
            End If

        Next
    End If
End Sub
Kullanıcı avatarı
Levent145
Yeni Başlamış
 
Kayıt: 09 Ağu 2020 20:51
Meslek: Memur
Yaş: 27
İleti: 84
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#12)  Miraç CAN » 15 Oca 2021 08:18

Arama başvuru kısmını mesajınızdan kopyala yapıştır yapmıştım, fark etmemişim, başvuru tanımınız eksik.
Worksheets("KONTROL").Range("P:P") bu şekilde olmalı, düzeltirseniz çalışacaktır.
Kullanıcı avatarı
Miraç CAN
Site Dostu
 
Kayıt: 26 Arl 2016 19:07
Meslek: Harita/Ölçme
Yaş: 39
İleti: 1008
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Amasya & Adana

Cevap: Sayfadaki Butonun Pasif Yapılması Hk.

İleti#13)  Levent145 » 15 Oca 2021 14:36

Hocam çok teşekkür ederim. Sorun çözüldü.
Kullanıcı avatarı
Levent145
Yeni Başlamış
 
Kayıt: 09 Ağu 2020 20:51
Meslek: Memur
Yaş: 27
İleti: 84
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara


Forum Genel Makro Soruları

Online Kullanıcılar

Bu forumu görüntüleyenler: Google [Bot] ve 1 misafir

Bumerang - Yazarkafe