30 Nisan 2015 Perşembe

EXCEL VOL15_Basit Bir Makro Oluşturmak



Oluşturacağınız makronun özellikleri aşağıdadır. Anlatacağımız adımları tek tek izleyin ve sakın Makroyu kaydederken söylediklerimizden başka herhangi bir işlem yapmayın.
1. Makro1 Çalışma Kitabını açın. Boş bir çalışma sayfasına geçin.
2. Yeni Makro Kaydet.... komutunu çalıştırın. Makro Adı kutusuna "deneme" yazın. Tamam düğmesine tıklayın.
3. Fare ile B2 hücresini seçin.
4. B-C sütun başlıkları arasındaki çizgiden fare ile tutun ve yeterli bir miktar genişletin. Adınızın sığacağı kadar.
5.B2 hücresine klavyeden adınızı girin.
6. Enter tuşuna basın ve bir alt hücreyi seçin.
7. Tekrar fare ile B2 hücresini seçin
8. Fare ile kalın ikonuna tıklayın.
9. Fare ile İtalik ikonuna tıklayın.
10. Fare ile Altı Çizili ikonuna tıklayın.
11. Fare ile Ortala ikonuna tıklayın.
12. Fare ile Dolgu Rengi ikonundan ve siyah rengi seçin.
13. Fare ile Yazi Tipi Rengi ikonuna tıklayın ve beyaz rengi seçin.
14. Kaydı Durdur ikonuna tıklayın ve Deneme makrosunu tamamlamış olsun.

Hazırlamış olduğunuz Deneme makrosunun görüntüsü böyle olacaktır. Tek fark, biz adımızı M. Temel Korkmaz olarak girdik. 

EXCEL VOL14_Makro Kaydetmek




1. Araçlar menüsünden Makro komutunu, buradan da Yeni Makro Kaydet komutunu tıklayın. Makro komutu menüsünün altında bulunan Makrolar ve Yeni Makro Kaydet komutlarının sol başlaında bulunan ikonlara dikkat ederseniz, bunların birer kayıt düğmesi olduğunu fark edeceksiniz. Burada şunu belirtmekte bir sakınca görmüyoruz: Makro kaydetmek demek, bir ses kasetine ses kaydetmek ya da bir video kasetine görüntü kaydetmek gibidir.


2- Yen, Makro Kaydet komutunu tıkladığınızda ekrana Makro Kaydet penceresi gelecektir.

Makro Kaydet penceresinde, Makro Adı bölümüne kaydetmek istediğiniz makronun adını yazın.

3- Makro Kaydet penceresinde gerekli değişiklikleri yaptıktan sonra Tamam düğmesine tıklayın ve Kaydı Durdur araç çubuğunun ekrana gelmesini sağlayın.

                Dikkat !!! Makronuzu hazırlamadan önce,yapmanız
                gereken her şeyi daha önce planlamalısınız. Çünkü
                makroyu kaydetmeye başladığınızda, yapmış
                olduğunuz hatalar ve bunları silmeniz dahi makroya kod
                olarak kaydedilecektir. Bunun ne gibi bir sıkıntı getireceğini ileri ki
               satırlarda daha rahat kavrayacaksınız.

Artık makronuzu yazdırma pozisyonuna geldiniz. Şimdi yazdırmak istediğiniz makroyu Excel Çalışma Sayfasında hazırlamaya başlayın. Biz aşağıdaki tabloyu hazırladık. Siz de buna benzer bir tablo hazırlayın.

Bu tabloda mayıs ayının ilk harfi olan "m" nin diğer aylardan farklı olarak küçük olduğuna dikkat edin. (Şekil-2) Amacımız bu harfi değiştirip büyük "M" harfi yapmak olacak.



4. Tablonuzu hazırladıktan sonra Kaydır Dursur penceresinden Kaydı Durdur ikonunu yıklayın.

EXCEL VOL13_Makrolar Hakkında Genel Bilgi


Microsoft Office paket programı içinde bulunan programların bazılarında, kullanıcıya kolaylık olsun diye, sürekli tekrar edilen (rutin) işlemleri otomatik hale getirmek için Makro komutu kullanıcıya sunulmuştur. Özellikle Excel'in bu komuta belki de diğer programlardan daha çok ihtiyacı vardır.

Makrolar hazırlanırken, Excel'in arka planında çalışan Visual Basic programlama dili de hazır halde beklemektedir. Herhangi bir kayıt yapıldığında bu programa dili aktif hale gelir ve sizin yapmış olduğunuz herhangi bir makro, komutunu programlama diline çevirir. Böylece daha sonra, hazırlamış olduğunuz makroyu düzenlemek istediğinizde, Excel bu imkanı size rahatlıkla sunar.

Makrolar başlığı altında biz sadece makrı hazırlamayı ve kullanmayı öğreteceğiz. Biraz da olsa Visual Basic kodlamaya göz atacağız. Biraz diyoruz, çünkü VBA KODKAMA bölümünde Excel' de VİSUAL BASİC kodlamayı geniş olarak ele alacağız.

Makrolar yukarı da da belirttiğimiz gibi, sürekli tekrarlamak zorunda kaldığınız komutları, biçemleri vs... sizin için otomatik hale getirir. Makro hazırlamadan yapmak istediğiniz işi eğer her defasında 100-150 komut vererek yapacaksınız, makroyu hazır hale getirdiğinizde, tek bir tıklama ile halledebilirsiniz.

Makroları kendiniz hazırlayabileceğiniz gibi, daha önce hazırlanmış makroları da kullanma imkanınız var. Bu hem kendi bilgisayarınızdan hem de başka bilgisayarlardan transfer şeklinde olabilir.

Burada uyarmadan geçmeyelim.

Dışarıdan transfer ederek kullanacağınız her makro sizin için ne kadar faydalı da olsa dikkatli olmanız gerekmektedir. Bunun nedeni çok basit. Makroların her programlama dili ile desteklendiğini söylemiştik. İşte ipucu burada yatıyor. Dışarıdan transfer ettiğiniz her makro VİRÜS içerebilir.

Excel ( makro kullanan diğer bir çok program da dahil, ama biz burada sadece Excel'den bahsedeceğiz), makro kayıtlı dosyayı açmak istediğinizde sizi uyaracaktır.

     Excel' de makro oluşturmanın üç yöntemi var.
1- Makro Kaydetme: Makroları bir teyp kullanıcısı gibi kaydetmek. Makrolar bölümünün konusunu bu seçenek oluşturuyor.

2- VBA Kodlama: Makro olarak hazırlamak istediğiniz komutları modül olarak Visual Basic' de hazırlamak. VBA Kodlama bölümünün konusunu bu seçenek oluşturur.

3- Fonksiyon Hazırlama: Excel'in yerleşik fonksiyonları (işlevleri) na benzer fonksiyonları modül sayfasını kullanarak hazırlayabilir. Uzun formüller yazmaktan kurtulursunuz. Fonksiyonlar bölümünün konusunu bu seçenek oluşturur.

Excel Soru-Cevap Vol22



Soru: Benim çalışma kitabımda aylara ait sayfalar mevcut ve ilk sayfa ise bunlara ait özel sayfası.
=EĞER(A1="OCAK";OCAK!A1;eğer(A1="ŞUBAT";ŞUBAT!A1;......;EĞER(A1="ARALIK";ARALIK!A1))))) yazdığımda hata uyarısı alıyorum. Formülü ancak Ağustosa kadar yazdığımda hatasız cevap veriyor
Bunu Aralık ayına kadar uzatmamız mümkün mü? Yoksa Excel'de belirli bir hücre sınırlaması mı mevcut?

Cevap: Yardım menüsünden de bileceğiniz gibi aynı işlevden iç içe 7 taneden fazla girmemiz mümkün değildir. Oysa sizin işleminiz de aylara yönelik olarak 12 adet EĞER formülü kullanılmalı. Her işlem başka sayfaya başvurduğu için de DÜŞEYARA formülü kullanılmamakta ve belki de daha zor olmaktadır.

Çözüm eldeki 12 adet eğer formülünü araya + işlecini koyarak 2 ye bölmektir. Bunun için aşağıdaki gibi bir işlem yapabilirsiniz. Formülün tam ve eksiksiz hali aşağıdadır. Formül B1 hücresine yazılmış ve A1 hücresindeki veriyi kontrol etmektedir.

=EĞER(A1="OCAK";OCAK!A1;EĞER(A1="ŞUBAT";ŞUBAT;!A1;EĞER(A1="MART";MART;!A1;EĞER(A1="NİSAN";NİSAN;!A1;EĞER(A1="MAYIS";MAYIS;!A1;EĞER(A1="HAZİRAN";HAZİRAN;!A1;))))))+EĞER(A1="TEMMUZ";TEMMUZ!A1;EĞER(A1="AĞUSTOS";AĞUSTOS;!A1;EĞER(A1="EYLÜL";EYLÜL;!A1;EĞER(A1="EKİM";EKİM;!A1;EĞER(A1="KASIM";KASIM;!A1;EĞER(A1="ARALIK";ARALIK;!A1;))))))


Excel Soru-Cevap Vol21


Soru: YTL ve YKR'yi ayrı hücrelerde yazarak toplamayı nasıl yapabilirim?

Cevap: Telefonlar ile gelen bazı acil sorularda, YTL ve YKR'nin ayrı hücrelerde toplatılması isteniyor fakat bunların irtibatlı olması da isteniyordu. Memur arkadaşlarımızın sorularına verdiğimiz cevabı burada açıklamalı olarak anlatıyorum.

A1 ve A2 hücrelerine YTL değerleri giriyoruz ve bunları A3 hücresinde hesaplatıyoruz. Bunun için A3 hücresine yazdığımız formül aşağıdaki gibidir.
=TOPLA(A1:A2)
B1 ve B2 hücrelerine de bu değerlerin Kuruş kısmını giriyoruz ve B3 hücresine aşağıdaki gibi yazdığımız formül ile toplatıyoruz.
=TOPLA(B1:B2)
Örnek resimde sizinde gördüğünüz gibi YTL birimi A3 içerisinde YKR birimi de B3 içerisinde normal olarak toplandı. Ancak biz biliyoruz ki, en büyük YKR tutarı 99 olmalıdır. Çünkü 100 YKR, 1 YTL'ye eşittir. Dolayısı ile her 100 YKR A3 hücresine aktarılmalı ve B3 hücresinden düşürülmelidir. O halde ilk olarak B3 hücresindeki değeri virgüllü formata sokarak net durumu görelim. Bunun için yapılması gereken en basit şey B3 hücresindeki formülü 100'e bölmektir.
=TOPLA(B1:B2)/100

Böylece sonucun 1,03 olduğunu göreceğiz. İşte A3 hanesine geçmesi gereken sayı virgülden önceki 1 rakamıdır. B3 hücresinde ise 0,03 rakamı kalacak. Şimdi ilk olarak B3 hücresinden 100 YKR'den fazlasını çıkartacak olan formülü yazalım.
=EĞER(TOPLA(B1:B2)>=100;TOPLA(B1:B2)/100-TAMSAYI(TOPLA(B1:B2)/100);TOPLA(B1:B2)/100)
yazdığımız formül çok basit. Eğer B1:B2 toplamı 100'e eşit ya da 100'den büyük ise B1:B2'yi topla, 100'e böl ve bu toplamın tamsayı kısmını çıkar. Eğer 100'den büyük ya da eşit değilse B1:B2'yi topla ve 100'e böl.

Geriye kalan sadece A3 hücresine çıkarılan tamsayı kısmını eklemektir. Onun için de Aşağıdaki aynı mantığı içeren formülü yazıyoruz.
=EĞER(TOPLA(B1:B2)>=100;TOPLA(A1:A2)+TAMSAYI(TOPLA(B1:B2)/100);TOPLA(A1:A2))
Her ne kadar bizim verdiğimiz örnekte tamsayı kısmı en fazla 1 olabilecekse de yazdığımız formül çok satırlı çalışmalar içindir. Sonuç aşağıdaki gibi olacaktır.

Evet, böylece YTL ve YKR'nin matematiksel olarak toplanma işlemi tamamlandı. Sıra işin görünümüne geldi. Sorunlarına acil cevap isteyen  arkadaşlarımız B3 hücresindeki görünümün 0,03 şeklinde değil de sadece kalan kuruş şeklinde görünmesini istiyorlardı.
Şimdi B3 hücresine bakalım. Görüntülenmesi istenen değer 3 YKR. Ancak bunun sadece 3 değil 03 şeklinde görüntülenmesi isteniyor. Şunu kesinlikle biliyoruz ki 03 diye bir sayı yok. Dolayısı ile Excel'de bu durumlarda hücreye 03 değil sadece 3 yazıyor. Bunu gösterebilmenin ise tek bir yolu var. O da B3 hücresindeki değeri sayı biçiminden çıkarıp, metin biçimine dönüştürmek.

Yapmamız gereken ise formülümüze metinsel işlemlerde kullandığımız PARÇAAL işlevini eklemektir. Bunun için aşağıdaki formülü B3 hücresine yazmanız yeterli olacaktır.
=PARÇAAL(EĞER(TOPLA(B1:B2)>=100;TOPLA(B1:B2)/100-TAMSAYI(TOPLA(B1:B2)/100);TOPLA(B1:B2)/100);3;2)



Excel Soru-Cevap Vol20



Soru: Grup halindeki toplamalarda hücrelerden herhangi bir #N/A olduğu durumda sonucu da etkisiz kılıyor. Bir grup toplamada sadece rakamları toplamak nasıl sağlanabilir?

Cevap: Bu tür hata mesajlarının hepsinde aynı yöntemi uygulamak mümkündür. Unutulmamalıdır ki, hata mesajı olan hücrede bir formül bulunmaktadır. Farz edelim ki hatalı hücrede aşağıdaki gibi bir formül olsun.

=DÜŞEYARA(B1;C1:D11;2;0)

Düşeyara ile aranılan veri bulunamadığında hücrede #YOK  hata değeri olacaktır. Dolayısı ile bu da o hücrenin içerisinde bulunduğu bir toplama dizisini hatalı olarak gösterecektir. O halde bu hücreye ya boşluk değeri ya da sıfır değeri atayabiliriz. Ama unutmayınız sıfır değeri çarpma işleminde sorun çıkartabilir. O halde boşluk değeri atayalım. Yukarıdaki formülü aşağıdaki gibi değiştiriniz.
=EĞER(EHATALIYSA(DÜŞEYARA(B1;C1:D11;2;0));"";DÜŞEYARA(B1;C1:D11;2;0))

Yaptığımız tek şey normalolarak bildiğimiz EĞER formülü ile birlikte EHATALIYSAformülünü kullanmaktır. Formülün anlaşılması için aşağıdaki açıklamayı inceleyiniz.

=EĞER(HATALIYSA(formül);"";formül))
"Eğer formül hatalı sonuç veriyorsa hücreyi boş bırak, değil ise formül soncunu yazdır."

29 Nisan 2015 Çarşamba

27-28-29 Nisan




Pazartesi sabah geldiğimde ilk iş olarak gelen mailleri kontrol ettim. Yapılması gereken işlemler vardı. Onları kontrol ettiklten sonra gönderen kişilere geri dönüş yaptım. Ondan sonra geçen 3 günün(Cuma'dan itibaren) puan kullanım raporunu çıkarttım. Onlarıda düzenleyerek gönderdim.

Bu hafta 70'e yakın personelin sicillerini kartlarına tanımladım. Bazı personellerin sicilleri kendilerinde olan başka bir karta kayıtlı olduğu için personelle görüşüp ne yapılması gerektiği hakkında görüştük.

Muhaberata indim ve bize gelen kargoları aldım. Gelen kargoları sahiplerine verdim. Bana gelen kargoları düzenleyerek daha sonra yapmak üzere hazırladım. Bana gönderilenler sadece güncellenecek yada hesaplarına yeni kart bağlanması gerekenlerdi.

23 Nisan 2015 Perşembe

20-21-22 Nisan



Bu hafta cuma gününden başlayarak yapılan alışverişlere göre puanların nerede ve nasıl kullanıldığını gösteren bir liste hazırladım. İlk önce müşterilere sonra da mağazalara göre listeyi düzenledim. Bittikten sonra hepsini bir mailde toplayarak analize aldım ve departmandaki çalışanlara maille paylaştım.

Muhaberata indim ve bize gelen kargoları aldım. Gelen kargoları sahiplerine verdim. Bana gelen kargoları düzenleyerek daha sonra yapmak üzere hazırladım. benim adıma olanlar genellikle kart talepleriydi(servis, otel-restoran ve yat kartlar). Kartları müşterilerin adlarına tanımladım. Önceden kartı olan müşterilerin ise hesaplarına yeni bir kart bağlayarak mağazalara gönderimini sağladım. Bazı müşteriler ise kartlarını kaybetmişti. Onlarında hesaplarına direkt olarak bir kart bağladım ve mail atan mağaza müdürüne geri dönüş yaptım.

bu hafta yeni bir iş  aldım. Migros bünyesinde çalışan her personelin bir sicili vardır. Sistemde bu sicille kayıtlıdır. Yeni işe başlayan personellerin kartlarına sicilleri tanımlıyorum. Eğer bir aydan uzun süre çalışmışlarsa hesaplarına bono yatırılması gerekiyor.Onları yatırarak mail atan mağazanın müdürüne yada bürosuna geri dönüş yapıyorum.

15 Nisan 2015 Çarşamba

13-14-15 Nisan


Cuma gününden başlayarak yapılan alışverişlere göre puanların nerede ne nasıl kullanıldığını belirten bir liste hazırladım. İlk önce müşterilere(ilk 5'i) ve sonra da mağazalara göre (en çok alışveriş yapılan ilk 5 mağaza) olarak listeyi düzenledim. İlk önce müşterilere sonra da mağazalara göre listeyi düzenledim. Bittikten sonra hepsini bir mailde toplayarak analize aldım ve departmandaki çalışanlara gönderdim.

bu hafta insert'ün yeni sayısı çıktı. 23 Nisan olduğu için çocuklara özel kampanyalar, etkinlikler düzenlendi.
Yeni gelen üniversite stajyeri işten çıktığı için ona devrettiğim işleri tekrar ben yapmak üzere geri aldım. Bu yüzden ilk önce far ürünlerinin bir listesini çıkardım. Sonrada kampanyaları işaretledim. Ve neredeyse bütün haftamı alan SMS'leri yapmaya başladım. Listede 1500'den fazla ürün olduğu için hem onları kontrol ediyorum hemde isimlerini tekrar düzenleyerek listeye geçiriyorum. Sonra hepsini gönderime hazır hale getiriyorum. Bu kısım uzun sürüyor. Çünkü ürünün kategorilerini, hangi ürün olduğunu, fiyatını yazan bir içerik hazırlıyorum. Bittikten sonra tekrar onları kontrol ediyorum..

8 Nisan 2015 Çarşamba

6-7-8 Nisan




3 günlük kullanım raporu hazırladım. Müşterilerin yaptıklara harcamaları kontrol ettim. Aşırı bir harcama varsa onun detayı kullandığım tabloya kaydettim. Onlardan yararlanarak bir rapor hazırladım ve departmandakilere mail olarak gönderdim. Diğer günlerin de raporlarını hazırladım ve onlarıda gönderdim.

Salı ve Çarşamba günleri çok  yoğundu. Normal olarak gelen ve E-fatura olarak gelen faturaları kaydettim ve  referans numaralarını faturanın üstüne yazdım. Normal faturaları imzalattım ve diğerleriyle birlikte muhasebeye teslim ettim. bu hafta bunlardan başka yapacak bir işim yoktu. Bende Staj Dosyamdaki bir kaç eksiği tamamladım.

3 Nisan 2015 Cuma

30-31 Mart-1 Nisan



Pazar gününde yapılan alışverişleri dikkate alarak puan kullanım raporunu hazırladım. Sadece pazar gününü hazırlamama rağmen en çok alışveriş yapan mağaza listesini düzenlerken fazlasıyla zorlandım çünkü bazı mağazalardan 7 veya 8'den fazla yapılan alışveriş vardı.(bu listede en az 3 alışverişi olan mağazanın alışverişleri kontrol edilmelidir. 3'den fazla kaç kayıt varsa listeye alınır.) hepsini tek tek kontrol edip hangi kampanyadan yararlandıklarını ve hangi ürünleri tek tek kontrol edip listeye geçirmek zorunda kaldım. Bu yüzden diğer günlerin raporlarını yapmadım.

İnsert'ün yeni sayısı çıktığı için bu hafta fazlasıyla yoğundum. SMS'leri diğer stajyer yaparken bende far ürünlerinin listesini ve kampanyaları insert üzerinde işaretlemeyi yaptım.

Gelen faturaların girişlerini yaptım. İmzalattıktan sonrada muhasebeye götürdüm. Bir faturada tevkifat oranı alınmadığı için faturayı kesen firmaya geri gönderdik. Tevkifat oranı alınarak tekrardan yeni bir fatura düzenlemesini istedik