bir userform üstündeki commandbuttonu başka bir komutla otomatik çalıştırmak

Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
çalıştığım programda bir userform üstünde commandbuttona görev atamışım. ancak ben bu formun açılmadan başka bir butonla bu formdaki butonu harekete geçirmek istiyorum. mümkün mü acaba?

yardımlarınız için şimdiden teşekkürler

saygılar:yardim:
------------------------------------------------------------------------
bana bir harf öğretenin KIRK yıl kölesi olurum.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Çalıştırmak istediğiniz commandbuton1 olduğunu varsayarsak Aşağıdaki kodu bir denermisiniz?
Kod:
Call CommandButton1_Click
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,354
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Kod:
Private Sub Userform_Initialize()
    CommandButton1_Click
End Sub
Form açılmadan önce butonun işini yapacak. Gördüğünüz gibi Prosedürün ismini yazmak yeterli olacaktır.
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn sezar

evet bu kod çalıştırıyor ancak hangi userform üstünde olduğunu nasıl belirtecez. çünkü commandbutton1 userform3 üstünde ama ben commandbutton1 i userform2 deki komutla çalıştıracam yani userform3 açık değil.

saygılar.:yardim:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Bir tane Boş bir module açınız.Ve kodları o modüle yazınız.Mesela
sub a
msgbox "deneme"
end sub
commandButton'lara call a yazınız ve her iki userform'da ayni kodları kullanabilir.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
evet bu kod çalıştırıyor ancak hangi userform üstünde olduğunu nasıl belirtecez. çünkü commandbutton1 userform3 üstünde ama ben commandbutton1 i userform2 deki komutla çalıştıracam yani userform3 açık değil.
Aşağıdaki gibi bir çözümde kullanabilirsiniz. Öncelikle userform3 teki prosedürü private olarak değilde sadece sub olarak tanımlayın. Yani,

Kod:
Private Sub CommandButton1_Click()
Yukarıdaki prosedür yerine aşağıdaki gibi yapın.

Kod:
Sub CommandButton1_Click()
Daha sonrada userform2 deki butonada aşağıdaki kodu yazın.

Kod:
Private Sub CommandButton1_Click()
UserForm3.CommandButton1_Click
End Sub
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn sezar galiba ben anlatamadım

userform2 de commandbutton1 e aşağıdaki kodları atamışım;

Private Sub CommandButton1_Click()
Sheets("urun").Select
bastar = CLng(CDate(TextBox1))
bittar = CLng(CDate(TextBox2))
[3ay!a2:z65530].ClearContents
For a = 1 To [a65530].End(3).Row
deg = Cells(a, "B")
If deg >= bastar And deg <= bittar Then
son = [3ay!a65530].End(3).Row + 1
Sheets("3ay").Range("a" & son & ":Z" & son) = Range("a" & a & ":Z" & a).Value
End If
Next
End Sub

benim istediğim programda çalışan ve ana menu olarak adlandırdığım userform açıkken üstündeki bir buttonla userfom2 de yukarda gördüğünüz kodları beraber çalıştırması. tabi bu durumda userform2 açık olmayacak. userform2 aktif olarak kullanılacak bir form değil her gün bu kodların çalışması gerekiyor. o yüzden kullanıcının mudahalesi olmadan (userform2 görünmeden ve açılmadan) userform2 hergün ana menüdeki bir butonla devreye girecek.

yardımlarınız için teşekkürler.
saygılar.:yardim:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yukarıdaki kodunuzdaki private kelimesini kaldırın. Sadece Sub CommandButton1_Click() şeklinde kalsın. Ana userformunuzdaki butonada aşağıdaki kodu yazın.

Kod:
[LEFT]Private Sub CommandButton1_Click()
UserForm2.CommandButton1_Click
End Sub[/LEFT]
 
Katılım
14 Ekim 2006
Mesajlar
267
Excel Vers. ve Dili
excel2003 Tr
sn leventm

sayın hocalarım

en son mesajımda userform2 ile userform3 ün yerlerini karıştırdım özür dilerim. ancak sayın leventm hocamın yazdığı aynen benim istediğim gibi. mükemmelsiniz.

yardımcı olan herkese çok teşekkür ederim..

saygılar.:hey:
 
Üst