Excelde Kendi Eklenti Ve Fonksiyonlarınızı Oluşturun Online Eğitimler sadece 49,99 TL. Hem de ikinci eğitim ücretsiz! Makroyu Kopyala 'Excel Makro (VBA) online eğitimleri için: https://www.excelsizeyeter.com/excelsizeyeter.com/udemy_giris.php adresine tıklayınız. Bir eğitim alana bir eğitim bedavadır. İkinci eğitim olarak Excel, Excel pratik çözümler, finans eğitimleri vb. alabilirsiniz. Bir Excel dosyasını açtığınızda şöyle bir formül kullandıysanız bilirsiniz; dec2hex, hex2dec, dec2bin, bin2dec vs., bu formülleri kullanabilmek için Araçlar – Eklentiler içinden Toolpak Çözümleyicilerin seçilmiş olması gerekir. Toolpak eklentisi Program FilesMicrosoft OfficeOffice10LibraryAnalysisATPVBAEN.XLA dosyasıdır. Eğer daha önce verilen bu tip formülleri kullanmak isterseniz bu dosyanın Eklentiler içinde seçilmiş olması gerekir. Bu dosya ne işe yarar derseniz, mühendislik kategorisinde formülleri içeren makroların yazıldığı bir dosyadır. Dec2Hex formülü; desimal olarak verilen değer yada hücrenin hexadesimal olarak değerini aktif hücreye yazdığı bir formüldür. Excel’in kendisine ait diğer eklentileri ise; Arama sihirbazı, Çözücü eklentisi, İnternet yardımcısı VBA, Koşullu toplam sihirbazıdır. Eğer hex, dec, oct, bin sayı çevrimlerini kullandıysanız XOR da kullanmak istemişsinizdir fakat XOR olarak Excel ‘in bir formülü yoktur. Bu durumda siz kendiniz bu formülü yazabilir ve sayfa içerisinden rahatlıkla kullanabilirsiniz… BİR FORMÜL NASIL OLUŞTURULUR; Eğer Excel in formüllerini incelemişseniz şuna benzer şekilde olduklarını görürsünüz; =HEX2DEC(A1) ‘Yani A1 hücresinin içinde hex sayı var onu decimale çevir demek… =HEX2DEC(“ff”) ‘Üsteki formülle aynı fakat hücre erimi değil direkt olarak hex biçimli veri girilmiş… =TOPLA(A1:A10) ‘A1den A10 a kadar tüm hücrelerin içerisindeki verileri topla demek… =TOPLA(A1;A5;A8;B13) ‘Üstteki formülle aynı fakat sadece A1 + A5 + A8 + B13 hücrelerini topla demek, erim olarak geniş karelik bir alan verilmemiş (“;” ve “:” ye dikkat!). =TOPLA(A1;125) ‘Üstteki formülle yine aynı fakat sadece A1 hücresi ile 125 sayısını topla demek. =DÜŞEYARA(A5;SHEET1!A1:C500;2;YANLIŞ) ‘Bu formülde ise aktif sayfanın A5 hücresine bak, sheet1 sayfasının A1:C500 eriminde A sütununda bunu ara; bulduğunda 2nci sütun (B sütununu)daki değeri yaz; eğer A5 ile bulduğun tamamıyla aynı ise demek…. Yukarıdaki formüllerde de görüleceği üzere; 1. Formül = ile başlar 2. Formülün kod kelimesi verilir 3. Formülde verilecek değerler parantez içinde girilir 4. Verilecek değer birden fazla ise aralarında noktalı virgül kullanılır 5. Değerler girilecek formülün ihtiyacına göre değişebilir (sayı olabilir, string olabilir, erim yada tek hücre olabilir vs.) Şimdi bu bilgilerin ışığında kendi formülümüzü oluşturalım… XOR fonksiyonunu yapan bir formül oluşturacağız. Verilen iki hücre yada erim içerisindeki verileri long olarak okuyacak ve birbirleriyle XORlayıp sonucu formül yazılan hücrede gösterecek. 1. Önce formülümüze bir isim verelim: XorDec (long tipindeki sayıların XOR u için kullanılacağından her zaman akılda kalması için anlamlı olmasına dikkat edilmeli ve kullanılamayacak isimlere dikkat!). 2. Girilecek (istenen) veriler ne olacak (önce tek hücreli sonra geniş erim olsun; A1 ile A2:A5 gibi) 3. Formül sonucu nasıl gösterilecek (formül girilen hücreye long tipinde sayı) FONKSİYON OLUŞTURMAK; Buraya kadar tamam, peki Formül nasıl yazılacak? Fark etmiş olacağınız üzere bu Basic’de de yazılan fonksiyonlara benzer. Giriş değerlerini alacak, üstünde işlem yapacak ve sonucunda bir değer döndürecek… Excel Visual Basic Düzenleyicisini (Araçlar – Makro altında yada Alt+F11 kısayol) açalım. Insert menüsünden bir Module ekleyelim, bu projemize yeni bir modül ekler. Public Function xORdec(OneCell As Range, Optional MultipCells As Range) As Long Satırını yazalım. Bu Public olarak fonksiyonumuzu tanımlayacak, her taraftan kullanabileceğiz. OneCell isimli değişken bir erim, tercihsel olarak MultipCells olarak diğer erim fonksiyonla birlikte girecek ve fonksiyondan Long tipinde değer dönecek. ‘kullanacağımız değer tiplerini tanımlayalım Dim tmpH As Long ‘long tipinde tmpH değeri tüm XOR değerler için kullanılacak ‘hata tuzaklaması, eğer hata kontrolü yapılmazsa sonsuz döngü ve istenmeyen sonuçlar doğurabilir fonksiyonumuz ‘Local olarak tanımlanmasının nedeni function yada sublarda hata olursa buraya gelmemesi için On Local Error GoTo errTekHücre ‘Eğer hücre doluysa bunu geçici bir değere ata If OneCell Then tmpH = Val(OneCell) ‘geniş erim olarak tanımlanan çoklu hücrelerin değerini For Each Cell In MultipCells ‘xor la tmpH = tmpH Xor Val(Cell) Next ‘sonucu fonksiyona ata xORdec = tmpH Exit Function errTekHücre: ‘hatayı temizle Err.Clear ‘gösterilecek sonuca ne yazılacak, hata nasıl gösterilecek; hata mesajı olarak biz burada 0 sonucunu döndürdük… xORdec = 0 ‘hata artık olduğu yerde kalsın On Local Error GoTo 0 Exit Function End Function Basitçe yazacağımız kodlar şimdilik bu kadar. Şimdi bunu kaydedelim. Bu açık Excel dosyasının içinde yer alacak. Bu dosyanın herhangi bir yerine şimdi formülümüzü yazalım =xordec(A3;A4:A10) ‘anlamı A3’den A10’a kadar hücrelerin içindekileri XORla demek eğer içinde hata oluşursa sonucunda 0 yazacak… EKLENTİ OLUŞTURMAK; Peki bu Excel dosyasını kaydedip, kapatıp başka bir Excel dosyası açarsak bu formülü kullanabilir miyiz? Bu formülü yazdığımız hücrede #AD? hata mesajı görünür. Bu formülün tanımlanamadığını gösterir. Bu sorun ise eklentilerle aşılır. Yani Excel her açıldığında belirlenen her eklenti Excel ile birlikte yüklenir. Boş bir Excel dosyası açalım, Visual Basic Düzenleyicisini (Araçlar – Makro altında yada Alt+F11 kısayol) nden, Insert menüsünden bir Module ekleyelim. Yukarıda verilen kodları aynı şekilde yazalım. Açmış olduğumuz çalışma kitabını farklı kaydet menüsü ile Microsoft Excel Eklentisi (*.xla) kayıt türünde, örneğin BenimMakrolarım adıyla kaydedelim. Bu çalışma kitabı sürücü:Documents and SettingsKullanıcı AdıApplication DataMicrosoftAddIns dizininde kaydedilecektir. Şimdi de Araçlar-Eklentiler menüsü açalım. Gözat butonuna basarak, yeni kaydetmiş olduğumuz eklentiyi işaretleyerek Tamam butonuna basalım. Kullanılabilir eklentiler: penceresinde bizim yazdığımız eklenti de görülecektir. Bunu işaretlediğimizde, her zaman Excel açılırken bizim eklentimizi de yükleyecektir. Artık yazdığımız fonksiyonu herhangi bir Excel çalışma sayfası içerisinden formül yazarmış gibi girerek kullanabiliriz… Şuna benzer bir fonksiyonu eklentinize eklerseniz, Public Function aX() As String aX = "Adınız Soyadınız" End Function Çalışma sayfanızda =aX() yazdığınızda, adınız soyadınız hemen görünecektir… Görüleceği üzere, Excel in kolaylıklarını (özelliklerini) daha verimli kullanırsanız, Excel de sizi hamallıktan (rutin işlerden) kurtaracaktır Bu makro ile ilgili sorun bildir Bu makro çalışmıyor. Kodlarda bir hata var. Diğer Hata ile ilgili görüşlerinizi aşağıdaki kutuya yazabilirsiniz. Hata bildir TÜM MAKROLAR Youtube Kanalımız Aşağıdaki makrolar işinize yarayabilir. Benzer Sonuçlar NoMakro Adı 1 excelde kendi eklenti ve fonksiyonlarınızı oluşturun 2 Kullanıcı tanımlı menü oluşturma / Üstte "Eklentiler" bölümüne kendiniz menü oluşturup onlara makro atayın 3 hücre değerini açiklamaya ekleme 4 hücrede bir sonraki ayın gün sayısı kadar gün ilave etme 5 klasör ve dosya makrolarındaki yolları kendine göre düzenle 6 excel dosyası belirli bir tarihten sonra açılmasın 7 Katılım Kodları, çalışma kitabı düzeyindeki görevleri & nbsp; kolay bir şekilde ve minimum çabayla gerçekleştirmenize yardımcı olacaktır. & Nbsp; Geçerli Bir Çalışma Kitabının Yedekleme Oluşturun: Bu, geçerli bir dosyanın bir yedek dosyasını kaydetmenize yardımcı olabilecek en kullanışlı makrolardan biridir çalışma kitabı. Bir yedek dosyayı, geçerli dosyanızın kaydedildiği dizinde kaydeder. & Nbsp; Ayrıca, geçerli tarihe dosyanın adını ekleyecektir. 8 makrolar kutusu ve makrolar görünsün 9 menü çubuğunun silinmesi ve özel bir menünün oluşturulması 10 veri olan iki ayrı sütunu birleştirme 11 listbox'tan seçilen hücreyi silmek. 12 find menüsü oluşturma 13 eklantilerin tamamının kontrolü 14 Eklenti var mı yok mu tespit etme (Excel kütüphanesinde var mı yok mu?) 15 userform un başliği haraket ediyor 16 userform un başlığı haraket ediyor 17 30 excel dosyası içinde bir kelime aratma 18 İçerik Tablosu Yaratın: Çalışma kitabınızda 100ün üzerinde çalışma sayfanız olduğunu varsayalım. Ve şimdi gezinmek zor. Bu makro kodunun her şeyi kurtaracağından endişelenmeyin. Bu kodu çalıştırdığınızda, yeni bir çalışma sayfası oluşturacak ve onlara bir köprü içeren çalışma sayfalarının & nbsp; bir dizini oluşturacaktır. 19 excel-outlook 20 Eklentileri Makro kullanarak açma veya kapatma