Excel Kullanıcı Formları - Excel İpuçları

İçindekiler
Excel 97, yeni Kullanıcı Formlarını tanıttı. İngilizce olarak, bana bir liste kutusu oluşturmayı ve kullanmayı öğretin.

MrExcel kısa süre önce okuyucularımızdan biri için özel bir uygulamayı tamamladı. Bu Excel Uygulamasında, kullanıcı, sayfadaki belirli bir parça numarası için 150 veri noktası girecektir.

1. Bir düğmeye tıklandığında, bu parça numarası ve ilgili veri değerleri Sayfa2'deki bir veritabanına kaydedilir. Bu iyiydi, ancak daha sonra kullanıcının girişleri gözden geçirebilmesi için sayfa 2'den bir kayıt çağırması için bir yola ihtiyacımız vardı. Kullanıcının sayfadaki tüm öğeleri gösteren bir açılır kutu ile bir form açmasına izin vermek istedim

2. Kullanıcı kaydırabilir, bir öğe seçebilir ve ardından bu değerleri 2. sayfadan 1. sayfaya çekerdim.

Çoğunuz gibi ben de Excel 5.0'da Excel makroları yazmaya başladım. Excel 97'deki tüm bu Makro Düzenleyici biraz korkutucu. Bu haftanın ipucu için, size bu proje için liste kutusunun nasıl oluşturulacağını adım adım göstereceğim. Bu haftaki odak noktası sadece açılan kutu. Hedef kitle, Excel makrolarının temellerini bilen, ancak bir makroyla etkileşimde bulunmak için hiçbir zaman bir form kullanmayan kişidir.

İlk adım: Mevcut makroları değiştirdim, böylece sayfa2'ye bir kayıt eklediklerinde, makro "Parça Listesi" olarak adlandırılacak parça numaralarını içeren aralığı adlandıracaktı. A1 hücresinde, A2 hücresindeki ilk öğeyle birlikte bir başlık vardır. Son satırı bulmak için End komutunu kullandım:

LastRow = Range("A6000").End(xlUp).Row ActiveWorkbook.Names.Add Name:="PartList", RefersTo:="=Sheet2!$A$2:$A$" & LastRow

İkinci adım: Liste kutusu formunu düzenleyin. Bu adımları takip et:

  • Alt-F11'e basarak Visual Basic Düzenleyicisi'ni başlatın
  • Menüden Ekle> Kullanıcı Formu'nu seçin. Düzenleyici size boş bir UserForm1 vermelidir.
  • Sol alt köşede Özellikler-UserForm1 kutusunu görmüyorsanız, "Özellikler Penceresi" simgesine basın - beyaz bir sayfayı işaret eden parmakla bir ele benziyor.
  • Özellikler penceresindeki 4. giriş Başlıktır. Şu anda, Başlık UserForm1 olacaktır. Özellikler penceresinde Resim Yazısının sağındaki kutuyu tıklayın ve form için yeni bir başlık yazın. Benimkine "İncelenecek Parça Numarası Seçin" dedim. Formun diğer tüm özelliklerini varsayılan durumlarında bıraktım.
    Kullanıcı Formunu Kullanarak Liste Kutusu Oluşturma
  • Kullanıcı formunun içinde herhangi bir yere tekrar tıklayın ve Kontroller Araç Kutusu görünecektir.
  • Kontroller araç kutusunda, A harfini seçin. Formun üstünde bir etiket kutusu oluşturmak için tıklayın ve sürükleyin. Varsayılan olarak bir Label1 başlığına sahiptir. Metin kutusunun içine tekrar tıklayın ve başlığı düzenleyebilirsiniz. Kullanıcıya talimatları buraya yazın: "Aşağıdaki listeden bir öğe seçin ve değerleri incelemek için Tamam'ı tıklayın".
  • Formu tıklayın, ancak etiket kutusunun dışına tıklayın ve kontrol araç kutusunu tekrar göreceksiniz. Üst satırdaki 4. öğe, birleşik giriş kutusu aracıdır. Bunu tıklayın ve bir birleşik giriş kutusu oluşturmak için kullanıcı formuna sürükleyin. Burası parça numaralarının listesinin görüneceği yerdir. Varsayılan ad ComboBox1'dir.
    Combobox Özellikleri
  • Özellikler penceresi şimdi size ComboBox1'in özelliklerini gösterecektir. RowSource özelliğini görene kadar özellikleri aşağı kaydırın. RowSource özelliği için = Sayfa2 yazın! Parça Listesi
  • Artık işlerin düzgün çalıştığından emin olmak için hızlı bir test çalıştırabilirsiniz. Tüm formu seçmek için kullanıcı formunuzun başlık çubuğunu tıklayın. Şimdi "oynat" simgesine tıklayın (VCR'nizdeki oynat düğmesine benziyor). Excel çalışma kitabınıza geri döneceksiniz ve basit kullanıcı formumuza sahip olacaksınız. Parça numarası açılır menüsüne tıklarsanız, geçerli parça numaralarının bir listesini görmelisiniz. Birini seçin ve açılan kutuda kalacaktır. Şimdiye kadar çok heyecanlı değil. Kutuyu kapatmak için sağ üst köşedeki küçük X işaretini tıklayın.
  • Visual Basic düzenleyicisine dönün. Kontrol Araç Kutusu'nu göstermek için kullanıcı formunu tıklayın. CommandButton aracına tıklayın ve bir düğme çizin. Özellikler - CommandButton1 penceresini kullanarak başlığı Tamam olacak şekilde değiştirin.
  • İkinci bir düğme çizin ve İptal olarak etiketleyin.
  • Neredeyse bitirdik. İptal düğmesine biraz kod bağlayalım. İptal düğmesine sağ tıklayın ve "Kodu Görüntüle" yi seçin. Editör, Sub ve End Sub ifadelerinizi oluşturacaktır. Aralarına bir satır kod yazın:
    UserForm1.Hide
  • Evet, tek bir tuşa kod atamak bu kadar. Kullanıcı formuna geri dönmek için, Proje Penceresindeki UserForm1 kelimelerine çift tıklayın. (Proje penceresini göremiyor musunuz? Özellikler simgesinin hemen solundaki Proje Gezgini simgesine basın.)
  • Kullanıcı form1'i bitirmek için Tamam düğmesi ile bir şeyler yapalım. Kullanıcı Tamam'ı tıklattığında, liste kutusundaki değerin sayfa1 hücresinde A2 görünmesini istiyorum ve ardından daha önce yazdığım ReviewItem adlı bir makroyu başlatmak istiyorum. Tamam düğmesine sağ tıklayın ve Kodu Görüntüle'yi seçin. Özel Alt CommandButton1_Click () için bu kodu girin:
    Worksheets("Sheet1").Range("A2") = UserForm1.ComboBox1.Value UserForm1.Hide ReviewItem

Tebrikler! İlk kullanıcı formunuzu tamamladınız. Formun görünmesini sağlamak için şu satıra sahip bir makro çalıştırın:

UserForm1.Show

Form şunun gibi görünecek:

Kullanıcı formu tamamlandı

Ilginç makaleler...