Genel Bakış
Form Denetimleri (Form Controls), çalışma sayfasına yerleştirilen düğme, onay kutusu, birleşik giriş kutusu, liste kutusu, seçenek düğmesi, değer değiştirme düğmesi ve kaydırma çubuğu gibi hazır arayüz nesneleridir. Kullanıcı bu nesnelerle etkileşime girdiğinde sonuç bir hücreye yazılır ya da bir makro çalışır. Böylece formül yazmadan da kontrollü, tıklanarak kullanılan formlar ve panolar hazırlanabilir.
Geliştirici sekmesi varsayılan olarak gizlidir. Sekmeyi göstermek için:
Seçenek düğmeleri ve onay kutuları için de aynı mantık geçerlidir. Onay kutusunun bağlı hücresi mantıksal değer, seçenek düğmesinin bağlı hücresi sıra numarası verir.
ControlFormat altında LinkedCell, ListFillRange, Min, Max, SmallChange ve Value gibi özellikler bulunur.
ActiveX denetimleri daha fazla özellik sunar (yazı tipi, renk, olay yordamları) ve tasarım modunda düzenlenir. Form denetimleri ise daha basit, hafif ve kararlıdır. Çoğu formül tabanlı kullanım için form denetimleri yeterlidir. Form denetimlerinin kodla kullanılan olay yordamları yoktur. Düğme dışındaki denetimlere de OnAction özelliğiyle makro atanabilir.
Her onay kutusu C sütunundaki hücresine DOĞRU ya da YANLIŞ yazar. İlk görevin durumu D2 hücresinde Tamamlandı, ikinci görevin durumu D3 hücresinde Bekliyor olarak görünür. Bir kutuyu işaretleyip kaldırdığınızda D sütunu ve tamamlanma oranı anında güncellenir. Şu anki oran E2 hücresinde 50% olarak hesaplanmıştır.
Birleşik giriş kutusu, A2:A7 aralığındaki şehirleri açılır liste olarak sunar. Seçim yapıldığında C2 hücresine şehrin listedeki sıra numarası yazılır. Seçilen şehir D2 hücresinde İzmir, kargo ücreti E2 hücresinde 55,00 olarak görünür. Kutudan başka bir şehir seçtiğinizde her iki formül de yeni sıraya göre güncellenir.
Her düğmenin yukarı oku B sütunundaki adedi bir artırır, aşağı oku bir azaltır. Adet değiştikçe D sütunundaki tutarlar ve toplamlar yeniden hesaplanır. İlk ürünün tutarı D2 hücresinde 450,00, genel toplam ise D7 hücresinde 1.409,50 olarak görünür. Düğme en küçük değer olan 0'ın altına ve en büyük değer olan 100'ün üstüne geçmez.
Nerede bulunur
Form denetimleri Geliştirici > Denetimler > Ekle (Developer > Controls > Insert) menüsünün üst bölümünde, Form Denetimleri başlığı altında yer alır. Alt bölümdeki simgeler ActiveX denetimleridir ve ayrı bir yapıdadır.Geliştirici sekmesi varsayılan olarak gizlidir. Sekmeyi göstermek için:
- Dosya > Seçenekler > Şeridi Özelleştir (File > Options > Customize Ribbon) yolunu açın.
- Sağdaki listede Geliştirici (Developer) kutusunu işaretleyin.
- Tamam düğmesine tıklayın.
Başlıca form denetimleri
Menüde şu denetimler bulunur:- Düğme (Button): Tıklandığında atanan makroyu çalıştırır. Yerleştirirken Makro Ata (Assign Macro) penceresi açılır.
- Birleşik Giriş Kutusu (Combo Box): Bir listeden seçim yaptıran açılır liste kutusudur. Seçilen öğenin sıra numarasını bağlı hücreye yazar.
- Onay Kutusu (Check Box): İşaretliyken bağlı hücreye DOĞRU, işaretsizken YANLIŞ yazar.
- Değer Değiştirme Düğmesi (Spin Button): Yukarı ve aşağı oklarla bağlı hücredeki sayıyı belirlenen adımla artırır ya da azaltır.
- Liste Kutusu (List Box): Birden çok öğeyi aynı anda gösteren listedir. Tek ya da çoklu seçim yapılabilir.
- Seçenek Düğmesi (Option Button): Aynı gruptaki seçeneklerden yalnız birinin seçilmesini sağlar. Bağlı hücreye seçilen düğmenin sıra numarasını yazar.
- Grup Kutusu (Group Box): Seçenek düğmelerini gruplar. Bir sayfada birden çok bağımsız seçenek grubu kurmanızı sağlar.
- Etiket (Label): Sabit açıklama metni gösterir.
- Kaydırma Çubuğu (Scroll Bar): Bağlı hücredeki sayıyı çubuğu kaydırarak değiştirir. Büyük aralıklarda hızlı ayar yapmak için uygundur.
Nasıl kullanılır
Bir denetimi kurmak için şu adımları izleyin:- Geliştirici > Denetimler > Ekle menüsünden denetimi seçin.
- Fare imleci artı işaretine dönüşür. Sayfada sürükleyerek denetimin yerini ve boyutunu çizin.
- Denetime sağ tuşla tıklayıp Denetimi Biçimlendir komutunu seçin ve Denetim (Control) sekmesini açın.
- Denetimin türüne göre Hücre bağlantısı (Cell link), Giriş aralığı (Input range), En küçük değer, En büyük değer ve Artış gibi alanları doldurun.
- Bağlı hücreyi formüllerde kullanın. Denetimde yapılan her değişiklik formülleri yeniden hesaplatır.
Seçenek düğmeleri ve onay kutuları için de aynı mantık geçerlidir. Onay kutusunun bağlı hücresi mantıksal değer, seçenek düğmesinin bağlı hücresi sıra numarası verir.
VBA ile kullanım ve ActiveX farkı
Form denetimleri VBA ile de eklenebilir. Sayfanın Shapes koleksiyonundaki AddFormControl yöntemi denetimi oluşturur, ControlFormat özelliği ise bağlantı ve sınır ayarlarını içerir:
VBA
2 satır
Set sp = ActiveSheet.Shapes.AddFormControl(xlCheckBox, 10, 10, 80, 20)
sp.ControlFormat.LinkedCell = "$B$2"
ActiveX denetimleri daha fazla özellik sunar (yazı tipi, renk, olay yordamları) ve tasarım modunda düzenlenir. Form denetimleri ise daha basit, hafif ve kararlıdır. Çoğu formül tabanlı kullanım için form denetimleri yeterlidir. Form denetimlerinin kodla kullanılan olay yordamları yoktur. Düğme dışındaki denetimlere de OnAction özelliğiyle makro atanabilir.
1. Onay kutusuyla görev takibi
Altı görevlik bir liste hazırlayın. C sütunu onay kutularının bağlı hücreleridir. Excel'de her görev satırına Geliştirici > Denetimler > Ekle > Onay Kutusu ile bir kutu çizin, kutunun yazısını silin ve Denetimi Biçimlendir > Denetim sekmesinde Hücre bağlantısı alanına ilgili C hücresini yazın. D sütunundaki formül durumu, E2 hücresindeki formül tamamlanma oranını hesaplar. Bu örnekte onay kutuları makroyla kurulmuştur.Form Denetimleri
Formülünü incelemek için bir hücre seçin.| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Görev | Sorumlu | Tamamlandı | Durum | Tamamlanma Oranı |
| 2 | Rapor hazırlama | Ayşe Yılmaz | DOĞRU | Tamamlandı | 50% |
| 3 | Stok sayımı | Mehmet Demir | YANLIŞ | Bekliyor | |
| 4 | Fatura kontrolü | Elif Kaya | DOĞRU | Tamamlandı | |
| 5 | Müşteri araması | Can Özkan | YANLIŞ | Bekliyor | |
| 6 | Sipariş girişi | Zeynep Arslan | DOĞRU | Tamamlandı | |
| 7 | Arşivleme | Burak Şahin | YANLIŞ | Bekliyor |
Görev TakibiExcelDepo v1.0.0
2. Birleşik giriş kutusuyla şehir seçimi
A sütununda şehirleri, B sütununda kargo ücretlerini listeleyin. Tablonun altına bir birleşik giriş kutusu ekleyin: Geliştirici > Denetimler > Ekle > Birleşik Giriş Kutusu. Kutuya sağ tuşla tıklayıp Denetimi Biçimlendir komutunu seçin. Giriş aralığı alanına A2:A7, Hücre bağlantısı alanına C2 yazın. D2 ve E2 hücreleri seçilen sıra numarasına göre şehri ve ücreti getirir. Bu örnekte kutu makroyla kurulmuştur.Form Denetimleri
Formülünü incelemek için bir hücre seçin.| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Şehir | Kargo Ücreti | Seçilen Sıra | Seçilen Şehir | Seçilen Ücret |
| 2 | İstanbul | 45,00 | 3 | İzmir | 55,00 |
| 3 | Ankara | 50,00 | |||
| 4 | İzmir | 55,00 | |||
| 5 | Bursa | 48,00 | |||
| 6 | Antalya | 60,00 | |||
| 7 | Trabzon | 70,00 |
Kargo ÜcretleriExcelDepo v1.0.0
3. Değer değiştirme düğmesiyle adet ayarı
Ürün, adet, birim fiyat ve tutar sütunlarından oluşan bir sipariş formu hazırlayın. E sütununa her satır için bir değer değiştirme düğmesi ekleyin: Geliştirici > Denetimler > Ekle > Değer Değiştirme Düğmesi. Denetimi Biçimlendir > Denetim sekmesinde en küçük değeri 0, en büyük değeri 100, artışı 1 yapın ve Hücre bağlantısı alanına ilgili B hücresini yazın. Tutar sütunu adetle birim fiyatı çarpar, son satır toplamları verir. Bu örnekte düğmeler makroyla kurulmuştur.Form Denetimleri
Formülünü incelemek için bir hücre seçin.| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Ürün | Adet | Birim Fiyat | Tutar | Ayar |
| 2 | Defter | 10 | 45,00 | 450,00 | |
| 3 | Kalem | 5 | 12,50 | 62,50 | |
| 4 | Dosya | 8 | 18,00 | 144,00 | |
| 5 | Klasör | 12 | 32,75 | 393,00 | |
| 6 | Zımba | 6 | 60,00 | 360,00 | |
| 7 | Toplam | 41 | 1.409,50 |
Sipariş FormuExcelDepo v1.0.0
Kullanırken dikkat edin
- Hücre bağlantısını unutmayın: Denetimin tek başına bir değeri yoktur. Sonucu formüllerde kullanabilmeniz için Hücre bağlantısı alanını doldurmalısınız. Bağlı hücreyi silmeyin ya da içine elle farklı bir değer yazmayın.
- Sınırlar: Değer değiştirme düğmesi ve kaydırma çubuğu yalnızca tam sayı üretir. En küçük değer negatif olamaz, en büyük değer en fazla 30000'dir. Ondalıklı ya da negatif değer gerekiyorsa bağlı hücreyi bir formülle bölün ya da kaydırın.
- Gruplama ve seçenek düğmeleri: Aynı sayfadaki tüm seçenek düğmeleri, Grup Kutusu kullanmadığınızda tek bir grup sayılır ve yalnız biri seçilebilir. Birden çok bağımsız grup için önce Grup Kutusu çizin, sonra düğmeleri kutunun içine ekleyin. Her grubun kendi bağlı hücresi olur.
- Dosya türü ve makro: Düğmeye makro atanmışsa dosyayı Excel Çalışma Kitabı (*.xlsm) olarak kaydetmelisiniz. Makrosuz bir .xlsx dosyasında denetimler çalışmaya devam eder, ancak makro atamaları saklanmaz.
- Yerleşim ve sürüm farkları: Denetimin sağ tuş menüsündeki Denetimi Biçimlendir > Özellikler (Properties) sekmesinden, hücrelerle birlikte taşınıp taşınmayacağını belirleyebilirsiniz. Süzme ya da satır gizleme yapılan tablolarda denetimlerin hücrelerle birlikte hareket etmesini isterseniz Hücreyle birlikte taşı ve boyutlandır seçeneğini kullanın. Web için Excel'de form denetimleri eklenemez ve tam desteklenmeyebilir. Mac sürümünde Geliştirici sekmesinin görünümü farklı olabilir.
- İlgili konular: ActiveX Denetimleri, Geliştirici Sekmesi, Veri Doğrulama (açılan liste için alternatif), Makro Atama, Tasarım Modu, Shapes.AddFormControl yöntemi, ControlFormat nesnesi, İNDİS, EĞER, EĞERSAY ve TOPLA işlevleri.