hücre secme kutusu

Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
merhaba
hücreleri secmek icin hücrenin yanina kutucuklar yapilabilir mi. ayni testlerdeki siklari isaretler gibi. kutucugu sectigim zaman hücre degeri istenilen hücreye aktarilacak.tesekkür ederim.
 

Ekli dosyalar

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Ekli dosyada istediğiniz düzenlemeyi yaptım. Ancak xls uzantılı olarak ekliyorum. Siz 2007 versiyonu ile xlsm olarak kaydedersiniz.
 

Ekli dosyalar

Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
merhaba
Levent hocamizin yapmis oldugu dosyaya ufak ekler yapmak istiyorum. satir sayisini arttirmak, secilen onay kutusu ile iki hücreye ait bilgiyi aktarmak istiyorum. tesekür ederim.
 

Ekli dosyalar

Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
merhaba
dosyadaki asagidaki mevcut kodlardan hangisinde degisiklik yapmam gerekiyor acaba. kod bilgim yetersiz oldugu icin bir sey yapamadim simdiye kadar. simdiden ilginize cok tesekkür ederim.

Dim chk() As New Class1
Private Sub Workbook_Open()
say = Sheets("sayfa1").Shapes.Count
ReDim Preserve chk(say)
For Each nesne In Sheets("sayfa1").OLEObjects
If TypeName(nesne.Object) = "OptionButton" Then
c = c + 1
Set chk(c).chk = nesne.Object
End If
Next
End Sub

Public WithEvents chk As MSForms.OptionButton
Private Sub chk_Click()
hucre = Sheets("sayfa1").Shapes(chk.Name).TopLeftCell.Next
If chk.Value = True Then [sayfa1!e3] = hucre
End Sub
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bunun için öncelikle A sütunundaki hücrelere yeni optionbutonları kopyalamak gerekli. Bunu tasarım moduna geçtikten sonra (geliştirici sekmesindeki cetvel ikonu) bir üst hücredeki optionbutonu kopyalayarak yapabilirsiniz. Daha sonra kodlara gerekli ilaveleri yapmak gerekiyor. Ekli dosyadaki eklemeleri inceleyebilirsiniz.
 

Ekli dosyalar

Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
Levent Bey size nasil tesekür edecegimi bilemiyorum. sizden o kadar sey ögrendim ki. saglicakla kalin.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Rica ederim. Burada bulunmamızın temel amacı bilgimizi paylaşmak. Sözleriniz bunu başarabildiğimizi gösteriyor. Buda inanın bizi çok mutlu ediyor.
 
Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
merhaba
Sayin Levent bey konuyla ilgili olarak bir sorum daha olacak. ayni sayfa icerisinde tamamen bagimsiz bir secme islemi daha yapmak istiyorum. veya bagimsiz islemi cogaltmak icin ne yapmam gerekiyor. bir de option butonuna kod atama islemini nasil yaptiginiz konusunda bilgi verirseniz cok memnun olurum. tesekkür ederim.
 

Ekli dosyalar

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Ekteki dosyada istediğiniz uygulamayı bulabilirsiniz. Kısaca dosyanın çalışma mantığını dosyada kullanılan temel özellikler üzerinden açıklamaya çalışayım.

Class modül

Normalde istediğiniz işlemi, her bir option butona ayrı ayrı kod yazarak yaptırmak mümkün. Ancak çok sayıda option buton sözkonusu olduğunda bu çok fazla kod yazılması anlamına gelecektir. İşte burada bu kod kalabalığını ortadan kaldırmak için class modül devreye giriyor.

Class modülde tek bir prosedür oluşturularak tüm option butonların yapacağı işlem, sadece bu class modüldeki prosedür üzerinden gerçekleştiriliyor. Tabii burada öncelikle yapılması gereken işlem, her bir option butona class modüldeki prosedüre göre çalışması gerektiğinin tanımlanmasıdır. İşte bu atamayı Thisworkbook modülündeki kodlar yapmaktadır. Dosyanızda iki ayrı option buton grubu için iki ayrı işlem istediğinizden, iki ayrı class modül prosedürü tanımlanmıştır.

Groupname özelliği

Dosyanızda iki grup option butonun farklı işlem yapmasını istemiştiniz.

Bu işlemi sağlamanın en kolay yolu birbiriyle bağlantılı çalışmasını istediğiniz her bir option buton grubuna, bir groupname adı tanımlamaktır. Bu groupname adını her bir option butonun properties penceresinde görebilirsiniz.

Örneğin, dosyanızdaki A sütununda bulunan option butonların groupname adı "1", K sütunundakilerin adıda "2" olarak tanımlanmıştır. Böylece grup 1 içindekiler kendi arasında, grup 2 içindekilerde yine sadece kendi arasında çalışacaktır.

Hangi class modül prosedürünün hangi option butonlara bağlanacağının tespiti içinde yine bu groupname tanımlaması ayırıcı bir özellik olarak kullanılmıştır. (thisworkbook modülündeki kodları inceleyiniz)

TopLeftCell özelliği

Shape nesnesine ait olan ve class modül içinde bulunan bu özellik, seçilen option butonun hangi hücrede bulunduğunu tespit etmek için kullanılmıştır.

Bu verinin tespitindeki amaçta, ilgili option butonun sağındaki diğer iki hücrede bulunan veriye ulaşabilmektir. Bu iki hücredeki verinin, yine class modül içindeki bir sonraki hücre için .next (bir sonraki), iki sonraki hücre için .next.next (sonrakinin sonrası) komutu ile tespit edilerek istenen hücrelere yazılması sağlanmıştır.

Umarım açıklayıcı olmuştur.
 

Ekli dosyalar

Katılım
28 Nisan 2008
Mesajlar
406
Excel Vers. ve Dili
Excel 2007- Türkce
Sayin Levent bey bu ders niteligindeki yanitinizdan dolayi cok tesekkür ederim. eminim ki bu konu hakkinda benim gibi fazla bilgisi olmayan arkadaslarda faydalanacaktir. her zaman ki gibi sizden bir sey daha ögrendik. emeklerinize saglik hocam. saglicakla kalin.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Rica ederim. Umarım tüm üyelerimize faydası olur.
 
Üst