Soru UserForm konumunun, sayfa/hücre üzerinden kontrolü

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,268
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Saygıdeğer hocalarım.. UserForm'un ekrandaki konumunu belirleyen Top ve Left koordinat değerlerini, birer hücre üzerinden alabilir mi? Maksat isteğe göre konumunu kodlara girilmeden sayfa üzerinden konumlandırabilmek.. Böyle bir şey yapılabilir mi?
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde kendinize uyarlayınız.
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
UserForm1.Top = Target.Top
UserForm1.Left = Target.Left
UserForm1.StartUpPosition = 0
UserForm1.Show
End Sub
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,268
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Hocam, sayfanın hangi hücrelerine değer girmeliyim. Yukarıdaki kod, DoubleClick olayı içerisine konulmuş..
Şöyle demiştim. Örneğin, konumlandırmak istediğimiz değerler;
UserForm1.Top = 162 ve
UserForm1.Left = 350 olmuş olsun..

Biz bu değerleri;
C1 hücresinde: 162
D1 hücresinde: 350 olarak girersek,

Makro kodunda (Top=C1 / Left=D1) yukarıdaki 162 ve 350 değerlerini C1 ve D1 hücrelerinden alacak..
Maksat kodlara gitmeden sayfa üzerinden ayarlama yapmak..
Böyle bir şey yapılabilir mi? diye sormuştum. Veya sizin yaptırmak istediğinizi ben anlayamadım.
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,268
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde deneyiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
UserForm1.Top = [c1]
UserForm1.Left = [d1]
End Sub
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,268
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Seyit hocam oldu, çok çok teşekkürler.. Küçük bir prüz daha kaldı. Aşağıda yapmak istediğim örneği ekliyorum.
Şöyleki, Form üzerinde yer alan SpinButton ile, C1 ve D1 üzerinden rakamsal değerleri çalıştırıyorum.
Ve Form üzerine eklemiş olduğum, TextBox1 de C1 değeri, TextBox2 de D1 değeri gözüküyor..

Ancak SpinButton ile, C1 ve D1 hücrelerinde değiştirdiği değerler, aynı anda TextBox1 ve TextBox2 de de değişsin.
Çünkü, C1 ve D1 hücrelerin satırı gizli kalacak.. C1 ve D1 değerlerinin ilerlemesi TextBox1 ve TextBox2 de gözüksün.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,742
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
Option Explicit

Private Sub SpinButton1_SpinDown()
[C1] = [C1] - 1
TextBox1.Value = Sheets("sayfa1").Range("C1").Value
TextBox2.Value = Sheets("sayfa1").Range("D1").Value
End Sub

Private Sub SpinButton1_SpinUp()
[C1] = [C1] + 1
TextBox1.Value = Sheets("sayfa1").Range("C1").Value
TextBox2.Value = Sheets("sayfa1").Range("D1").Value
End Sub

Private Sub SpinButton2_SpinDown()
[D1] = [D1] - 1
TextBox1.Value = Sheets("sayfa1").Range("C1").Value
TextBox2.Value = Sheets("sayfa1").Range("D1").Value
End Sub

Private Sub SpinButton2_SpinUp()
[D1] = [D1] + 1
TextBox1.Value = Sheets("sayfa1").Range("C1").Value
TextBox2.Value = Sheets("sayfa1").Range("D1").Value
End Sub

Private Sub UserForm_Initialize()
TextBox1.Value = Sheets("sayfa1").Range("C1").Value
TextBox2.Value = Sheets("sayfa1").Range("D1").Value
End Sub
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,268
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Korhan hocam.. Her zamanki gibi yine burada da yardıma gelmenize, ne kadar teşekkür etsem azdır..
Allah bahtınızı açık eylesin, tüm yardım edenler için..
Aklıma geleni size danışayım.. Olamayacağını tahmin ediyorum, ama teyit etmek için..
Şöyle ki;
SpinButton ile rakamsal değerleri değiştirirken, form da aynı anda konumlanabilir mi?
Yani Formu aç kapa yapmadan, değişen rakamsal değerlere göre kendini konumlayacak/ilerleyecek..
 
Son düzenleme:
Üst