Bu siteye giriş yaparak Çerez kullanımını kabul etmiş oluyorsunuz. İşbu sitede; çerez olarak, sadece son giriş tarihiniz ve eğer üye olursanız oturum statünüz tutulacaktır. Bunlar dışında başka hiçbir bilgi tutulmamaktadır. Çerezler için detaylı bilgi için buraya tıklayınız.
ANLADIM

DUYURULAR

Yeni eklenen ve/veya güncellenen sayfaları görmek için buraya tıklayınız.

Güncel ödev ve test listesini görmek için buraya tıklayınız.

Sitede yapılan iyileştirmeler ve hata düzeltmelerine ait tüm bilgilendirmeleri görmek içinburaya tıklayınız.

Baş
Udemy
Konular
Son

DESTEK RİCASI

Arkadaşlar sizlerden küçük bir ricam olacak. Eğer sitemi beğeniyorsanız Udemy'deki ücretsiz olan VBA-1 eğitimimi alıp 4.5 veya 5 şeklinde puanlayabilir misiniz. Normalde böyle bir ricada bulunmak istemezdim ama bazı 'ruh hastaları' eğitimimi alıp izlemeden 1 puan veriyorlar. Kimisi de 1-2 ders izleyip 1 puan veriyor. Eksiklerim olabilir ama 1 puanı hakeden bir eğitim değil bu. Bu tür hareketler ortalama puanımı çok düşürdüğü için sizden böyle bir ricada bulunmak isterim. Şimdiden teşekkürler.

Konular
Taskpane
CoreVSTO
VSTO
VSTOGörsel Araçlar2

Taskpane

Taskpane kullanımı oldukça basittir. Peki nerede kullanırız. Aslında aklınıza gelebilecek herşey için kullanabilirsiniz. Excel'in kendi built-in taskpanelerini düşünün. Onlardan herhangi birine benzer bir amacınız olabileceği gibi, ribbonlardaki çeşitli seçenekleri Taskpane'den de vermeyi tercih edebilirsiniz. Mesela HTML dünyasındaki CSS'lere benzer bir yapıyı burada yaratabilrisiinz. Böylece Excelin hazır styling şablonlarını uygulamak yerine kendinize ait yeni şablonlar yaratabilir ve bunları hızlıca tablolarınıza uygulayabilrsiniz.

Veya Excel açıldığı sırada bir veritabanından çeşitli değerleri okuyabilir ve taskpane üzerinden bunlara ait işlemler yapabilirsiniz. Taskpaneden hızlı copy-paste yapmak gibi.

Dediğim gibi, aklınıza gelecek herşeyi yapabilirsiniz. Hadi hızlıca ne yapmak gerekiyor ona bakalım.

Yaratım

Malesef Toolbox içinden sürükle bırak şeklinde veya New Project Item diyip Ribbon yaratır gibi TaskPane yaratamıyoruz. Bunun için birkaç parça kod yazmamız gerekiyor.

User Control

Öncelikle, Project menüsüne sağ tıklayıp New Item diyerek bir adet User Control ekliyoruz. Bunun adına MyUserControl diyelim. Bu nesne, aslında bir Form nesnesi gibidir. İçine her tür form kontrolü konabilir.

Şimdi bu usercontrolün içeriğini istediğimiz kontrollerle dolduralım. Basit örnek olması adına şimdilik sadece bir buton ve combobox koyalım.

Usercontrol

Kod

İlk olarak ister ThisAddin içine ister Ribbon içine(hangisi ihtiyacımızı görüyorsa) ana nesne değişkenlerini tanımlarız, sonra da nerden tetikleyeceksek orada yaratım kodlarını. Ben Ribbondan açmayı düşündüğüm için ribbona bir buton ekledim, global değişkenlerimi de ona göre olşuturacağım.

public partial class Ribbon1
    {
        public MyUserControl myusercontrol1; //taskpane için
        public Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane; //taskpane için
    
        //Aradaki diğer kodlar
	
		private void button30_Click(object sender, RibbonControlEventArgs e)
        {
            this.myusercontrol1 = new MyUserControl();
            this.myCustomTaskPane = Globals.ThisAddIn.CustomTaskPanes.Add(this.myusercontrol1, "İlk Task Pane");
            this.myCustomTaskPane.Visible = true;
            this.myCustomTaskPane.Width = 200;
        }	
    }    
	

Bu butona tıkladığımızda sağ tarafta TaskPane'imiz açılır.

Kullanım

Şimdi bu TaskPane ile basit birkaç iş yapalım.

Öncelikle diyelim ki, taskpane açılır açılmaz, combobox'ın içeriği dolsun. Butona basılınca da comboboxta seçili olan değeri aktif hücreye yazdıralım.

    public partial class MyUserControl : UserControl
    {
        public Microsoft.Office.Interop.Excel.Application app = Globals.ThisAddIn.Application;
        public MyUserControl()
        {
            InitializeComponent();
        }

        private void MyUserControl_Load(object sender, EventArgs e)
        {
            this.comboBox1.Items.Add(1);
            this.comboBox1.Items.Add(2);
            this.comboBox1.SelectedIndex = 0; //ilk değeri seçiyoruz
        }

        private void button1_Click(object sender, EventArgs e)
        {
            app.ActiveCell.Value = this.comboBox1.SelectedItem.ToString();
        }
    }

Daha kompleks bir örnek

Bu örnekte Taskpane'imizi hem içerik olarak zenginleştireceğiz. Hem de .Net dünyasının nimetlerinden faydalanacağız. Bu örneğin yerini değiştirip Örnek Projeler içine almaya karar verdim. Zira burada aşağıdaki ileri c# konularının kullanımı da sözkonusu.

  • Async/await keywordlerini
  • DataGridViewleri
  • LINQ syntaxını

TEST SORULARI

Son Sorumuz şuymuş:Your website/domain name: WWW.excelinefendisi.com This announcement ENDS ON: Nov 24, 2020!. We have not received a settlement from you. We've tried to email you yet were not able to reach you. Please Check Out: https://cutt.ly/MhohrbB For details as well as to post a discretionary settlement for domain services. 11242020130029643378972267964485347894
Soru:

A şıkkı:

B şıkkı:

C şıkkı:

D şıkkı:

Doğru Cevap Etiketler

İlişkili konuyu seç

Label
* Sorulara verilen yanlış cevaplardaki esprili yorumlarım için hoşgörünüze sığınıyorum.
* Test ve Ödevlerdeki bazı detaylar burada anlatılmamış olabilir. Bunları kendiniz araştırıp bulmalısınız.
* Birden çok konuya ait içeriği olan ödevler var. Algoritmik açıdan bakıldığında o an en uygun konuya adreslenmiştir.
Dikkat! Bir soruya cevap verdikten sonra geri dönemezsiniz.
0
0
0
0

SoruID:... Şu an için bu konu için soru bulunmamaktadır. İletişim menüsünden örnek sorularınızı bana iletebilirsiniz.




ÖDEVLER

0
0
ÖdevNo:... Şu an için bu konu için ödev bulunmamaktadır. İletişim menüsünden örnek ödev sorularını bana iletebilirsin.
Çözüme bakın(Başka türlü de çözülebilir tabi, bu benim çözümüm.)




=YORUMLAR ve SORULAR=