Userform Sabitleme Hk.

Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Herkese Merhaba ,

Amacım , Userformu ekranın tam ortasında açmak, açıldığı yerde sabitlemek ve mause ile sürüklenmesini yasaklamak istiyorum. ( Userformumun adı = Userform5 )

Bu kod ile Userform sayfanın tam ortasında açılıyor çok güzel fakat mause ile sürüklenebiliyor
Private Sub UserForm5_Layout()
Me.Move Application.Width / 2 - Me.Width / 2, Application.Height / 2 - Me.Height / 2
End Sub



Aynı kodu aşağıdaki gibi değiştirdiğimde ise mause ile sürüklenmiyor iyi güzel , fakat bu seferde Excel dosyamı ilk açtığımda Saçma sapan bir tarafa gidiyor , yarısı ekran içinde kalıyor yarısı da ekranda duruyor.
Private Sub UserForm_Layout()
Me.Move Application.Width / 2 - Me.Width / 2, Application.Height / 2 - Me.Height / 2
End Sub


Her iki kodu da userform' un kod kısmına yazıyorum ve sonuç alamıyorum. Konu hakkında yardımcı olabilecek kullanıcalara şimdiden teşekkür Ederim
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Pek ilgilendiğim konulardan değil ancak; aşağıdaki kodları uygulayarak istenileni elde ettim sanırım.
UserForm kendi ekranıma göre taşınamaz ve ekran ortasına konumlandırılmış duruma geldi.

Gerekirse kod'daki sayısal değerlerde değişiklikler yaparak sonuç alabilirsiniz diye düşünüyorum.
UserForm'un üzerine bir adet CommandButton ekleyin (adı CommandButton1 olsun)

Bu şekilde bir deneyin bakalım, umarım ihtiyacınızı karşılar.
Rich (BB code):
KODLARIN UYGULANDIĞI BELGE 5 NUMARALI CEVAP EKİNDE.
 
Son düzenleme:

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
Herkese Merhaba ,

Amacım , Userformu ekranın tam ortasında açmak, açıldığı yerde sabitlemek ve mause ile sürüklenmesini yasaklamak istiyorum. ( Userformumun adı = Userform5 )

Bu kod ile Userform sayfanın tam ortasında açılıyor çok güzel fakat mause ile sürüklenebiliyor
Private Sub UserForm5_Layout()
Me.Move Application.Width / 2 - Me.Width / 2, Application.Height / 2 - Me.Height / 2
End Sub



Aynı kodu aşağıdaki gibi değiştirdiğimde ise mause ile sürüklenmiyor iyi güzel , fakat bu seferde Excel dosyamı ilk açtığımda Saçma sapan bir tarafa gidiyor , yarısı ekran içinde kalıyor yarısı da ekranda duruyor.
Private Sub UserForm_Layout()
Me.Move Application.Width / 2 - Me.Width / 2, Application.Height / 2 - Me.Height / 2
End Sub


Her iki kodu da userform' un kod kısmına yazıyorum ve sonuç alamıyorum. Konu hakkında yardımcı olabilecek kullanıcalara şimdiden teşekkür Ederim
Aşağıdaki Kodu UserForm5 e yazarak deneyin.
Kod:
Private Type Pozisyon
Left As Single
Top As Single
End Type

Private Sub UserForm_ Layout()
Static Sabit As Pozisyon
Dim Hareket As Boolean
If Sabit.Left = 0 Or Sabit.Top = 0 Then
Sabit.Left = Me.Left
Sabit.Top = Me.Top
Exit Sub
End If
Hareket = False
If Me.Left <> Sabit.Left Then
Me.Left = Sabit.Left
Hareket = True
End If
If Me.Top <> Sabit.Top Then
Me.Top = Sabit.Top
Hareket = True
End If
End Sub
 
Son düzenleme:
Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Merhaba. Verdiğiniz kodu command1 butonu da ekleyerek denedim fakat kod hatası alıyorum maalesef

GM 5 Plus cihazımdan Tapatalk kullanılarak gönderildi
 
Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Tekrar Merhaba. Evet ben yönlendirmenizi yanlış anlamışım. Olay bu. Fakat benim userformum açılışta otomatik çıkıyor ve herhangi bir buton vs olmadan direkt monitörü ortalayarak ve mause ile taşınmasını engelleyecek bir koda ihtiyacım var. Yani userform içine gömülü olması lazım kodların

GM 5 Plus cihazımdan Tapatalk kullanılarak gönderildi
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aşağıdaki gibi basit bir kod işinizi görmez mi?

Kod:
Private Sub UserForm_Layout()
    Me.Top = (Application.Height - Me.Height) / 2
    Me.Left = (Application.Width - Me.Width) / 2
End Sub
.
 

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
Haluk hocam merhaba.
UF'yi a1 hücresinde sabitleyebilirmiz?
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi

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
Anladım.
İlginize teşekkür ederim.
 
Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Merhaba. Bendeki kod zaten sizin yazdığınız kod gibi

GM 5 Plus cihazımdan Tapatalk kullanılarak gönderildi
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aynısı değil, benzeri....

Kod bende sorunsuz çalışıyor. Sizin başka kodlar işi karıştırıyor olabilir ....

.
 
Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Vermiş olduğunuz yanıtlar için hepinize ayrı ayrı teşekkür ederim. Bı sevdadan vazgeçeceğim anlaşılan [emoji1]

GM 5 Plus cihazımdan Tapatalk kullanılarak gönderildi
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhaba.

Bir de aşağıdaki belgeyi dener misiniz?
UserForm'un, aktif excel penceresine göre değil, ekrana göre ortalanması işleminin gerçekleşmesi lazım
.
 

Ekli dosyalar

Son düzenleme:
Katılım
5 Kasım 2006
Mesajlar
572
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhaba. Verdiğiniz kodu command1 butonu da ekleyerek denedim fakat kod hatası alıyorum maalesef

GM 5 Plus cihazımdan Tapatalk kullanılarak gönderildi
3.cü mesajda hata sebebi
Private Sub UserForm_ Layout() yerine
Private Sub UserForm_Layout() olacak boş boşluk var bende çalıştı.

 
Katılım
28 Eylül 2009
Mesajlar
124
Excel Vers. ve Dili
Office 2019 TR 32 Bit
Altın Üyelik Bitiş Tarihi
15-02-2024
Haluk Bey, Vermiş olduğunuz kod gerçekten işe yaradı galiba. Şimdilik bir sorun yok. Başka bilgisayarda da açtım orada da sorun yok. Size ve sizin gibi cevap yazan herkese Çok Teşekkür Ederim
 
Üst