F

Çözüldü UserForm Simge Durumuna Küçültme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

fledermaus

Site Üyesi
Excel Versiyonu
Excel 365
Excel Sürümü
64 Bit
Excel Dili
İngilizce
Merhaba,

Ekte amatör olarak hazırlamış olduğum bir makro kayıt giriş formu bulunmaktadır. Userform açık iken diğer dosyalarıma müdahele edemediğimden simge durumunda küçült büyült vs. şeklinde bir makro ekledim. Ancak doğru çalışmıyor. Açıkçası nerede hata yaptığımı bir türlü çözemedim. Bu konuda yardımcı olabilecek birileri var mıdır ?

Birde forma yazılanları kayıt ettikten sonra kayıt edilen veriler, form üzerinde kalıyor. Kayıt işlemi yapıldıktan sonra yeni kayıt için formun clear olabilmesi için nasıl bir kod eklemeliyim ve ne şekilde eklemeliyim ?


Mesela silme işlemi için aşağıdaki kodu kullanmak istedim ancak sanırım kodları yerine doğru oturtamadım.

Sub txt_sil()
say = ActiveSheet.Shapes.Count
For i = say To 1 Step -1
If Left(ActiveSheet.Shapes(i).Name, 7) = "TextBox" Then
ActiveSheet.Shapes(i).Select
Selection.Delete
End If
Next
End Sub


Yardımlarınız için şimdiden çok teşekkür ederim. Makro yazmaya yeni yeni başladım. Kendimi bu konuda geliştirmek için çaba sarfediyorum ama bazı yerlerde tıkanıyorum.

Saygılarımla,
 

Ekli dosyalar

Çözüm
Herhangi bir değişiklik yapmadım. Sadece userform un simge durumuna küçültme işlemi ile ilgili kod ekledim. Bende herhangi bir sorun gözükmüyor. Sayfa üzerindeki butona tıklayın, userform açılması lazım.
Okutkan Hocam Merhaba,

Dosyayı indiriyorum ancak makrolar çalışmıyor. Tüm makrolar ayarlar kısmında enable olmasına rağmen

olmuyor. Nedenini anlayamadım açıkcası. Farklı bir ayarmı gerekli ?

Syg,
 
Herhangi bir değişiklik yapmadım. Sadece userform un simge durumuna küçültme işlemi ile ilgili kod ekledim. Bende herhangi bir sorun gözükmüyor. Sayfa üzerindeki butona tıklayın, userform açılması lazım.
 

Ekli dosyalar

Çözüm
@okutkan

Hocam bende dosyaya hiç müdahele etmeden indiridm. Hatta olmadı tekrar farklı kaydet diyerek makrı kaydettim. Tüm ayarları enable yaptım. Ama hala çalışmıyor. İlginç bir şekilde. Ne yapsam olmadı.



1696881460507.webp
 
Butona tıklamışsınız fakat buton seçili halde. Sebep buysa Tasarım modu nda olduğu için çalışmıyordur. Geliştirici sekmesinden Tasarım modunu kapatın.
 
Çarpının iki solunda bulunan simgeye tıklayınca herhangi bir işlem yapmıyor mu? Excel dosyasının sol alt tarafına küçültmesi lazım.
 
Hocam çok teşekkür ederim.

Ellerinize sağlık. Öğrenebilmek adına kodlara baktım ama nerelerde değişiklik yaptığınızı göremedim.

Ama tekrar tekrar inceleyeceğim.

Syg,
 
Userform küçültme işlemini anlamaya çalışmayın. Boşa kafa karışıklığı olacaktır. Textbox temizleme işlemi için "temizle" isminde bir prosedür oluşturdum. Bu prosedürü de "save" isimli butona ait kodun en altına yazdım. Kayıt işlemi bittiğinde son olarak temizle prosedürü çalışarak textboxları temizliyor. Temizle isimli prosedürü incelersiniz. İlk mesajınızdaki kodlamanın tamamı yanlış olmuş fakat mantık olarak aynı şekilde işliyor.
 
@okutkan hocam çok çok teşekkürler.

İnşallah yavaş yavaş öğrenerek geliştireceğim kendimi. Sadece yeni bir kod eklediğimde nasıl ekleme yapmam gerektiğinde çoğu zaman takılıyorum. End If and Next gibi bağlayıcı kodları karıştırıyorum. İnşallah bunuda zamanla çözeceğim.

Saygılar, sevgiler.
 
Aslında hepsi çok kolay fakat mantığını kavramak zaman alıyor. Sürekli aynı şeylerle uğraşıp, Mantığını kavradıktan sonra hatasız yazmaya başlarsınız.
Mesela ilk mesajınızdaki kodda, excel sayfası üzerindeki nesneler üzerinde işlem yapmaya çalışmışsınız fakat sizin işiniz userform üzerindeki nesnelerle.
Hangi işlemi neden yapmanız/yapmamanız gerektiğini zamanla kavrarsınız.
 
Mesela aşağıdaki kodu If fonksiyonu ile devam ettirmek istiyorum ancak fotoda görüldüğü gibi bağlamalarda hata yapıyorum.

Private Sub ComboBox2SERVICE_Change()
If ComboBox2SERVICE.Value = "HANDLING" Then
ComboBox3SERVICETYPE.RowSource = "COMBOBOX!HANDLINGSERVICES"
Else
ComboBox3SERVICETYPE.RowSource = "COMBOBOX!TERMINALSERVICES"
End If
End Sub

1696885994242.webp




Syg,
 
İlk If ten sonra Elseif yazmanız gerekir. En son End if ile bitireceksiniz.
Sürekli if kullandığınız için, her if ten sonra end if ile bitirmeniz gerektiği için kod hata vermiş.
Aralarda Elseif kullandığınız taktirde sadece en sona End if kullansanız yeterlidir.
Ayrıca, Else ile End if arasına kod yazmayacaksanız Else Kullanmasanız da olur.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(7 satır)

veya

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(11 satır)
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst