11 Haziran 2012 Pazartesi

Excel ve Visual Basic Bağlantısı 2

Merhaba dostlar.
Bugün sizlerle excel-vb bağlantısında işe yarayacak bazı kodlar paylaşacağım.

İşte ilk kod örneğimiz.
Dim yol As String = Path.GetFullPath(Path.Combine(Application.StartupPath, "..\..")) & "\erp.xlsx"

Bu kod satırı proje klasörünün içindeki dosyanın yolunu bulan kod satırıdır. Bu dosyanın adresini "yol" değişkenine atar. Yol adresini bulmak istediğiniz yer ise bu kod satırında "erp.xlsx" olarak gösterilen yerdir. Siz istediğiniz gibi değiştirebilirsiniz. Peki bu kod neredeki dosyanın adresini alır? Mesela "kayıtlar" diye bir uygulamanız olsun. Bu uygulamanın eğer siz değiştirmediyseniz "Belgeler\Visual Studio 2008\Projects" adresinde bir klasörü olur. Projeler içinden "kayıtlar" klasörüne girerseniz karşınıza bir klasör ve bir de solution dosyası çıkar. Bu kod işte bu klasörün içindeki herhangi bir dosyanın yolunu bulur. Özellikle excel veritabanı olarak kullanılacaksa bu kod çok işe yarar çünkü veritabanı olan excel dosyasını bu klasöre koyarsanız her bilgisayarda rahat bir şekilde çalışır.

ekzel.ActiveCell.Offset(0, 1).Value="Merhaba"

Bu kod satırında ekzel excel uygulamasını atadığımız değişkenin adıdır, bir önceki konuda anlatmıştım. Bu kod aktif olana yani seçili durumda olan hücrenin bir sütun sağındaki hücreye "Merhaba" yazdırır. 

ekzel.ActiveCell.Offset(0,-1).Value="Merhaba"

Bu kod aktif olana yani seçili durumda olan hücrenin bir sütun solundaki hücreye "Merhaba" yazdırır. 

ekzel.ActiveCell.Offset(1,0).Value="Merhaba"

Bu kod aktif olana yani seçili durumda olan hücrenin bir satır altındaki hücreye "Merhaba" yazdırır. 

ekzel.ActiveCell.Offset(-1,0).Value="Merhaba"

Bu kod aktif olana yani seçili durumda olan hücrenin bir satır üstündeki hücreye "Merhaba" yazdırır. 

ekzel.Cells(3, 8).activate()
Do While Not (ekzel.ActiveCell.Value = Nothing)
      ekzel.ActiveCell.Offset(1, 0).Select()
Loop

Bu kod satırları kayıt girerken çok işe yarayan satırlardır. 3. satır 8. sütunlu hücre seçildikten sonra aşağı doğru hücreleri denetler ve boş hücre geldiğinde durur. Bu satırlar program tarafından çalıştırldığında 8. sütunda 3. satırdan itibaren boş olan ilk hücreyi seçili hale getirir.
Bu küçük örneği de ekliyorum. Bu program veritabanı excel e kayıt yapabiliyor, istediğiniz isme göre arama yapıp bilgileri kutulara yazabiliyor. Excel ile Visual Basic bağlantısını çok iyi anlatabilecek bir örnek.


Hepinize kolay gelsin.

9 Haziran 2012 Cumartesi

Excel ve Visual Basic Bağlantısı 1

Merhaba dostlar.
Bugün sizlerle visual basic den excel e nasıl bağlantı yapılacağını anlatmaya çalışacağım. Excel ile bağlantı yapmak için programı yazmaya başlamadan önce yapılması gereken bir kaç işlem var öncelikle bunlardan bahsedeceğim. Windows Application oluşturulduktan sonra yapılacak işlemler sırayla şöyledir :

Sağ tarafta bulunan My Project seçeneğine çift tıkladığımızda karşımıza bu ekran çıkar. Buradan da sol taraftaki seçenekler kısmından References seçeneğini seçmemiz gerekir ve asıl işlem için hazır durumda oluruz. Buraya ulaştıktan sonra resimde işaretli Add düğmesine basarız ve şu pencere karşımıza çıkar.
Bu pencereden işaretli olan seçeneği seçeriz. Ben office 2007 kullandığım için "12.0" olanı seçiyorum office 2003 kullananlar "5.0" olanı seçmelidir. Bu aşamayı geçtikten sonra bir işlem daha kalıyor.
Yine References penceresinin alt kısmında bulunan kısımdan Microsoft Office Interop seçeneğini işaretleyip işlemi tamamlıyoruz. Böylece artık kodları yazmaya başlayabiliriz.
Bağlantıyı göstermek için küçük bir uygulama üzerinden anlatacağım. Burada bilgisayardan bir excel dosyası seçiyoruz ve girdi kutusundaki veriyi istediğimiz hücreye satır sütun numaraları yardımıyla yazdırıyoruz. Bilgisayardan dosya seçtirmek için Toolbox kısmından form ekranına Open File Dialog ekliyoruz. Eklediğimiz zaman form ekranının alt kısmında görünecektir , form ekranı üstünde görünmez. Şimdi kod kısmına biraz bakalım.

Excel dosyasının tüm yordamlarda tanınması için genel bir tanımlama yapmamız gerekiyor. Kod kısmında Public Class Form1 yazan yerin altına  Dim ekzel As New Excel.Application yazarsak excel dosyası programdaki tüm yordamlarda tanınır. Burada kırmızı olan ekzel değişken ismidir EXCEL dosyasını bir değişkenle ifade etmemiz gerekir.


Şimdi dosya seçme kısmına geçelim. Dosya seçme tuşunun yordamına girip şu kodları yazarız.
OpenFileDialog1.ShowDialog() Bu satır o düğmeye basıldığında dosya seçtirici pencereyi açtırır.
ekzel.Workbooks.Open(OpenFileDialog1.FileName) Bu satır ise seçtiğiniz dosyanın adresini alarak excel dosyasını açtırır. Programı çalıştırdığınızda excel sayfası görünmez. Eğer açtığınız excel sayfasını görmek istiyorsanız excel açtıran satırın altına ekzel.Visible = True satırını eklemelisiniz.


Şimdi istediğimiz veriyi excel sayfasına yazdırma kısmına geçelim. Bunun için şu satırı kullanırız;
ekzel.Cells(1,2).value = "Merhaba" Bu satır sayfanın 1. satır 2. sütununa Merhaba yazdırır. Örnekteki kod satırı ise şöyle ;
ekzel.Cells(Val(TextBox2.Text), Val(TextBox3.Text)).value = Trim(TextBox1.Text)
Bu kod girdi kutusunun değerini satır ve sütunları verilmiş hücreye yazdırır.

Programdan çıkarken şu kodlar çıkış düğmesinin yordamına eklenmelidir aksi takdirde excel kapanmıyor arka planda çalışmaya devam ediyor (eğer excel dosyasını görünmez halde çalıştırıyorsanız).

ekzel.Quit()
ekzel = Nothing

Yaptığım küçük örneği aşağıdaki bağlantıdan indirebilirsiniz.

Hepinize kolay gelsin.

Örneği indirmek için tıklayın.

9 Mayıs 2012 Çarşamba

Checkedlistbox Kullanımı 2

Merhaba dostlar.
Bugün sizlerle checkedlistbox nesnesi ile ilgili bazı kodları paylaşacağım.

 Dim veriler() As String = {"A", "B", "C", "D", "E"}
CheckedListBox1.Items.AddRange(veriler)

Bu kod satırında veriler adında bir dizi ve elemanlarını tanımlıyoruz ve checkedlistbox nesnemize bu diziyi yazdırıyoruz. Bu işlem veri eklemenin değişik bir yolu.

CheckedListBox1.Items.Insert(3, "Merhaba") 

Bu kod satırı da checkedlistbox nesnesinin 4. sırasına "Merhaba" ifadesini yazdıran satırdır.

CheckedListBox1.Items.RemoveAt(2)

Bu satır da nesnenin 3. sırasındaki veriyi siler.

CheckedListBox1.SetSelected(3, True)

Bu  satır nesnenin 4. sırasındaki veriyi seçili duruma getirir.

MessageBox.Show((CheckedListBox1.SelectedIndex + 1))

Bu satır eğer seçilmiş bir veri varsa onun kaçıncı sırada olduğunu messagebox ile gösterir.

Dim mn As Integer = CheckedListBox1.FindString("G")
CheckedListBox1.SetItemChecked(mn, True)

Bu satırlar da mn değişkenini nesnedeki "G" harfi ile başlayan veriye eşitler ve onu seçili duruma getirir.

Hepinize kolay gelsin.

6 Mayıs 2012 Pazar

Checkedlistbox Kullanımı 1 ve Split (Parçalama) Komutu

Merhaba dostlar.

Bugün sizlerle checkedlistbox nesnesine veri ekleme, seçtiğimiz veriyi silme veya elde etme ve string ifadeyi parçalama işlemlerini anlatmaya çalışacağım.
Örnek program üzerinden anlatıma başlıyorum. 

Üst kısımda bulunan kutulardaki verileri aralarına "/" işareti koyarak checkedlistbox nesnesine ekliyoruz. İstediğimiz veriyi seçip parçala deyip aşağıdaki kutulara parçalanmış şekilde yazdırıyoruz, istediğimiz verileri seçip silebiliyoruz. Gelelim kodlara.

 CheckedListBox1.Items.Add("Merhaba","Dostum") bu kod satırı iki string ifadeyi yan yana ve bitişik olarak yazdırır.


CheckedListBox1.Items.Add(TextBox1.Text & "/" & TextBox2.Text & "/" & TextBox3.Text & "/" & TextBox4.Text & "/" & TextBox5.Text) bu kod satırı da örnek programda kutulardaki verileri aralarına "/" işareti koyarak yazdırır.

Parçalama için Split komutu kullanılır programda split komutu şu şekilde kullanılmıştır ;

Dim veri() As String
veri = Split(CheckedListBox1.CheckedItems(0), "/")

Bu kod seçtiğimiz checkedlistbox verisini parçalıyor ve "veri" adında bir diziye atıyor. Parçalama komutunda önce parçalanacak string ifade yazılır, ardından virgülle ayrılıp parçalama kriteri yazılır. Bizim parçalama kriterimiz de "/" işaretidir. Parçalama işleminden sonra dizi elemanları elde edilmiş olur veri(0), veri(1)... artık kaç tane parça varsa o kadar dizi elemanı elde edilmiş olur.


Checkedlistbox nesnesindeki seçtiğimiz verileri silmek için şöyle bir kod kullanırız.


For x As Integer = CheckedListBox1.Items.Count - 1 To 0 Step -1
            If CheckedListBox1.GetItemCheckState(x) = CheckState.Checked Then
                CheckedListBox1.Items.RemoveAt(x)
            End If
Next


Bu kodlar checkedlistbox nesnesindeki tüm seçenekleri tarar ve seçili olanları siler.

Checkedlistbox nesnesi seçim yaparken ilk tıklamada seçili duruma gelmez bunu değiştirip ilk tıklamada seçme işlemi yapabilmek için nesnenin üzerine tıklayıp "Properties" penceresinden "CheckOnClick" özelliğini "True" olarak ayarlamanız gerekir.

Örneği indirmek için tıklayın.

Hepinize kolay gelsin.

1 Mayıs 2012 Salı

Listview ve Kolonları Yönetimi 2

Merhaba dostlar.

Bugün listview nesnesinden seçtiğimiz bir girdinin kolonlarındaki bilgileri nasıl elde edeceğimizi anlatmaya çalışacağım. Örnek programdan anlatmaya başlıyorum.
Resimdeki listview nesnesine form yüklenirken verileri yazdırıyorum. Nasıl yazdırılacağı bu konunun birinci bölümünde mevcut. Daha sonra seçtiğim girdilerin kolonlarını yandaki kutulara yazdıracağım.
Girdileri seçtirmek için checkbox seçeneğini kullandım bu kişiye seçtiği girdiyi daha iyi görme imkanı veriyor. Checkbox kullanabilmek için listview nesnesinde çift tıklayıp onun yordamına "listview1.checkboxes=true" yazmanız yeterlidir. Bunu yaptıktan sonra listview nesnesine tıkladığınızda checkbox görünür hale gelir.
Hasan girdisi seçili haldeyken göster tuşuna basılınca yandaki kutulara girdinin kolonları yazılır ve seçili girdi seçilmemiş hale getirilir. Seçili girdiyi seçilmemiş hale getirmek için şu kod kullanılır;
ListView1.CheckedItems(0).Checked = False

Şimdi kod kısmına geçelim. Listview girdilerini form_load yordamında yazdırdık.
Seçilen girdiyi elde etmek için şöyle bir kod satırı kullanırız;

 Dim girdi As ListViewItem
 girdi = ListView1.CheckedItems(0)
Bu satırlar sadece 1 seçim için kullanılır 2 veya daha fazla seçim yaparsanız çalışmaz programda bunu engellemek için bir kaç kod daha yazdım böylece sadece 1 seçim yaparak işlem yapabiliyorsunuz. Hasan ile başlayan girdinin kolonlarını elde edelim şimdi.

girdi.SubItems(0).Text="hasan"
girdi.SubItems(1).Text="erkul"
girdi.SubItems(2).Text="hasan@hotmail.com"
girdi.SubItems(3).Text="ankara"
girdi.SubItems(4).Text="1980"
Yukarıdaki satırları gösterim amaçlı yazdım programda "TextBox1.Text=girdi.SubItem(0)" yazarsanız işlem yapmış olursunuz. "SİL" tuşunun yordamına şu kod satırı ile çoklu seçim yapabilir ve bu seçenekleri silebilirsiniz.
 ListView1.Items.Remove(ListView1.CheckedItems(0))

Örneği indirmek için tıklayın.

Hepinize kolay gelsin.

30 Nisan 2012 Pazartesi

Listview ve Kolonları Yönetimi 1

Merhaba dostlar.

Bugün sizlerle Listview nesnesine nasıl kolon eklenir ve o kolonlara nasıl istediğimiz şeyi yazdırırız onu anlatmaya çalışacağım.

Öncelikle listview nesnesine kolon ekleyelim. Resimde görülen listview nesnesinin sağ üst köşesindeki kutucuğa tıkladığımızda "Listview Tasks" penceresi görünecektir. Buradan "Edit Columns" seçeneğine tıklayıp kolonları yönetebilirsiniz. Bu seçeneğe tıkladığımızda aşağıdaki pencere görünecektir.

Bu pencereden kırmızı halka ile gösterilen Add tuşuna her bastığınızda listview nesnesine yeni bir kolon eklenir. Bu kolonların isimlerini de resmin sağ tarafındaki "Text" kısmından değiştirebilirsiniz. Kolon genişliklerini de bu pencerede ayarlayabilirsiniz. Onun için de "Width" seçeneğini değiştirmeniz yeterli olacaktır. Kolonları ekledikten sonra muhtemelen form ekranında eklediğiniz kolonları göremeyeceksiniz bu sorunu aşmak için de şöyle bir yol izlemelisiniz.
Yine listview nesnesinin sağ üst köşesindeki kutucuğa tıklıyoruz ve açılan pencereden "View" kutusundan "Details" seçeneğini seçiyoruz ve eklediğimiz kolonlar görünür oluyor.

Gelelim bu kolonların altına istediğimiz şeyi yazdırmaya. Bunun için şöyle bir kalıp kullanmanız gerekiyor;
"ListView1.Items.Add(New ListViewItem(New String() {"Merhaba"}))". Bu kalıpta "Merhaba" yazısı ilk kolonun altına eklenir. Eklenecek yazılar kolon sayısı kadar artırılabilir. String bir ifadeyi tırnak içinde yazdırmak yerine string bir değişken de yazabilirsiniz.

Şekildeki örnek kutulara girilen değerleri listview kolonlarına yazdırıyor. Bunun için sadece "EKLE" tuşunun yordamına şu kod satırını yazmamız yeterli;
ListView1.Items.Add(New ListViewItem(New String() {TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text, TextBox5.Text}))


Bir sonraki konuda listview kolonlarındaki ifadeleri nasıl elde edeceğimizi anlatacağım. Şimdilik hepinize kolay gelsin.

15 Nisan 2012 Pazar

Hakkında Penceresi (About Box)

Merhaba dostlar.

Bugün sizlerle hakkında penceresinin nasıl yapıldığını paylaşacağım. Hakkında penceresi de SplashScreen penceresiyle benzerlik gösteriyor. Bakınız SplashScreen

Project > Add Windows Form seçeneğine tıklayıp gelen ekrandan About Box seçeneğini eklediğimizde hakkında penceremiz eklenmiş olur.


Hakkında penceresinin yazılarını da yine SplashScreen penceresinde olduğu gibi  My Project seçeneğine çift tıkladığımızda çıkan ekranda Assembly Information bölümünden değiştirebiliriz.




Bu pencereden istediğiniz değişiklikleri yapıp pencereyi özelleştirebilirsiniz. İsterseniz hakkında penceresinin resmini de değiştirebilirsiniz. O da şöyle yapılabilir.


Hakkında penceresine gelip resim bölümünün sağ üst köşesindeki kutucuğa tıklayıp Choose Image dediğimizde Select Resource penceresi çıkar ve burdan Import diyerek istediğimiz resmi yükleyebiliriz.

Bu pencerenin gösterimini bir tuşa bağlamak şık bir görünüş oluşturur. Sonra o tuşun yordamına girip 
AboutBox1.Show() dediğimizde iş tamamlanmış olur. Çıkış için herhangi bir şey yazmanıza gerek yok çünkü penceredeki tamam tuşu pencereyi kapatır.

Hepinize kolay gelsin.



Splash Screen (Bekletme Ekranı)

Merhaba dostlar.

Bugün sizlerle bekletme ekranının nasıl yapılacağını paylaşacağım. Bu ekran Form_Load kısmında çok işlem olan ve açılması uzun süren programlarda kullanılabilir. Form_Load kısmı program açıldığında programın size bir şey sormadan işlediği kodlar bölümüdür. Şimdi bu ekranın nasıl oluşturulacağını anlatacağım.

Project > Add Windows Form seçeneğine tıklıyoruz ve şu ekran çıkıyor karşımıza.


Bu ekrandan Splash Screen seçeneğini seçip eklediğimizde ekranımız programa dahil olur. Bu ekrana Solution Explorer penceresinden ulaşabilir ve değişiklikler yapabilirsiniz.

Çember içindeki seçeneğe çift tıkladığımızda şu ekran çıkar karşımıza.

Bu ekranda yazılı şeyleri aşağıdaki resimde görülen bölümden değiştirebilirsiniz.

Sağ kısımdaki My Project seçeneğine çift tıklayıp Assembly Information tuşuna tıklarsak karşımıza bir pencere çıkar oradan Title, Version ve Copyright kısmına istediğinizi yazarsanız program çalışırken Splash Screen ekranında kaydettiğiniz şey yazar.

Şimdi kod kısmına geçelim. 

Form_Load yordamının başına SplashScreen1.Show() yazarsınız, bu ekranın görünmesini sağlar, ardından işlenmesi zaman alan kodlarınızı yazarsınız. Bu kodların bitimine SplashScreen1.Close() yazarsınız bu da bu pencereyi kapatır ve form ekaranı görünür.

Hepinize kolay gelsin.






13 Nisan 2012 Cuma

Listbox Nesnesi Ve Kullanımı

Merhaba dostlar.

Bugün sizlerle Listbox nesnesinin kullanımını paylaşacağım. Listbox'a istediğimiz değeri girme , girilmiş değerleri seçerek silme ve seçtiğimiz değeri elde etme  yollarını açıklamaya çalışacağm. Küçük bir örnek üzerinden anlatıma başlıyorum.


Girilecek Değer = TextBox1 ve Seçilen Değer= TextBox2 olmak üzere:
Ekle tuşuna çift tıklayıp yordamını açıyoruz ve o yordamın içine TextBox1 içindeki değeri ListBox1 içine atan kod satırını yazıyoruz. Kodumuz şöyle;

ListBox1.Items.Add(Trim(TextBox1.Text)) , Trim komutu isteğe bağlıdır, istemeyen yazmayabilir.

Listbox nesnesine siz string bir ifadeyi kendiniz de yazdırabilirsiniz. Onun kodu ise şöyle olur;

ListBox1.Items.Add("Merhaba") , bu kod Listbox'a tam olarak tırnak içindeki ifadeyi yazdırır.

Silme işleminde iki seçeneğiniz var :
Tüm değerleri sildiren ListBox1.Items.Clear() komutu,
Seçilen nesnenin silinmesine yarayan ListBox1.Items.RemoveAt(ListBox1.SelectedIndex) komutudur.

Getir seçeneğinde ListBox'ta seçtiğimiz herhangi bir değeri TextBox2 nesnesine yazdırıyoruz. Bunun için önce seçtiğimiz index değerine karşılık gelen string ifadeyi elde etmemiz gerekiyor.


ListBox1.Items(ListBox1.SelectedIndex) , bu kod bize seçtiğimiz değerin kendisine veren koddur.

Artık Getir tuşunu işler hale getirmemiz için tek adım kaldı o da bu değeri nereye yazacağı.

TextBox2.Text = ListBox1.Items(ListBox1.SelectedIndex)


Bu satırla da seçtiğimiz değeri "Seçilen Değer" kutusuna yazdırıyoruz.

Resimde olan örneği de ekliyorum.

İndirmek için tıklayın.

Hepinize kolay gelsin.

12 Nisan 2012 Perşembe

Textbox 'a Sadece Sayı Veya Harf Girme , Sadece Seçtirme


Merhaba dostlar.

Bugün sizlerle textbox nesnesinde sadece sayı veya sadece harf girilmesine izin veren veya sadece seçilmesine izin veren kodları paylaşacağım. Resimlerle daha iyi anlaşılacağını umuyorum.


Şekildeki gibi önce biçimlendirmek istediğimiz textbox nesnesini seçiyoruz sonra "Properties" penceresine geçiyoruz.

Bu pencerede kırmızı daire içinde olan "Events" sekmesine tıklıyoruz ve karşımıza nesne ile ilgili olayların sıralandığı bir pencere çıkıyor. Bu pencereden "KeyPress" seçeneğinin yanındaki resimde işaret edilen boş kutuya çift tıklıyoruz ve karşımıza bir yordam (Sub) çıkıyor.


Bu yordama girilen kodlar klavyeden tuşa her bastığımızda çalıştırılır ve eğer kod izin verirse nesneye yazdırılır. Şimdi sadece harf girilmesine izin verecek kodu yazalım.

If Not (Char.IsLetter(e.KeyChar) = True) And e.KeyChar <> ChrW(Keys.Back) And e.KeyChar <> ChrW(Keys.Space) Then
    e.Handled = True
 End If

Burada "e.KeyChar <> ChrW(Keys.Back)" ve "e.KeyChar <> ChrW(Keys.Space)" komutları ile silme(Keys.Back) ve boşluk(Keys.Space) tuşlarına da izin veriliyor isterseniz bunları çıkartıp sadece harf girişine izin vermeniz de mümkün. Bu nesneye sadece küçük ya da sadece büyük harf yazılmasını istiyorsanız "Properties" penceresinden "Character Casing" bölümünden upper veya lower seçeneklerini kullanabilirsiniz.

Sadece sayı girilmesine izin verecek kod ise şöyle:

If Not (Char.IsNumber(e.KeyChar) = True) And e.KeyChar <> ChrW(Keys.Back) Then
            e.Handled = True
End If


Burada da sadece sayı girilmesine ve silme tuşunun kullanılmasına izin veren kodu görüyoruz.

Sadece seçilmesine izin verecek kod ise şöyle:

If e.KeyChar <> ChrW(Keys.Select) Then
            e.Handled = True
End If


Hepinize kolay gelsin.








11 Nisan 2012 Çarşamba

Tarih Hesaplamaları (DateDiff)


Merhaba dostlar.

Bugün sizlerle tarih hesaplamalar konusunu paylaşacağım. Bu hesaplamayı sağlayan komut ise "DateDiff()" komutudur. Komutun kullanımı ise şöyledir: DateDiff("yyyy", eski tarih değeri , yeni tarih değeri)

Bu komtta tırnak içinde olan yyyy değeri iki tarih arasında yıl hesaplaması için kullanılır, bu değrin diğer türleri ise şöyledir;
"s"---------saniye                    
"n"---------dakika
"d"---------gün
"ww"-------hafta
"m"--------ay
"yyyy"-----yıl

Burada eski tarih ve yeni tarih değerlerinin "Date" formatında olması gerekiyor yoksa komut çalışmaz. Tanımlı olan tarih (date) formatı ise gg.aa.yyyy şeklindedir.

Birkaç örnek yazalım; DateDiff("d",11.04.2001,13.04.2001)=2 ,  DateDiff("ww",11.04.2001,18.04.2001)=1


Yaptığım bu küçük programı da alta ekleyeceğim. Bu program iki tarih seçici arasındaki tüm verileri hesaplıyor.


Hepinize kolay gelsin.

10 Nisan 2012 Salı

LTrim , RTrim , Trim , UCase , LCase , Val Komutları

Merhaba dostlar.

Bugün sizlerle başlıkta yazılı olan komutların nasıl kullanıldığını paylaşacağım.

LTrim

String bir ifadenin sol kısmındaki boşluğu silen komuttur.İngilizcedeki left(sol) kelimesiyle alakalı bir kod.      
LTrim("   merhaba   ")="merhaba   " LTrim("mer ha ba")="mer ha ba" 
İkinci örneğin bu komutla alakası yok ama onu uyarı olarak yazdım. Bu üç trim komutu da sadece string ifadenin başı ve sonu ile işlem yapar, ifadenin ortasındaki boşluklara dokunmaz.

RTrim

String bir ifadenin sol kısmındaki boşluğu silen komuttur.İngilizcedeki right(sağ) kelimesiyle alakalı bir kod.  
RTrim("   merhaba   ")="   merhaba" , RTrim ("    merhaba dostlar      ")="    merhaba dostlar"

Trim

String ifadenin hem sağındaki hem de solundaki boşlukları silen komuttur. Mesela
Trim("   merhaba   ")="merhaba" , Trim ("    merhaba dostlar      ")="merhaba dostlar"

Trim komutu kayıt tutmanız gereken uygulamalarda çok işe yarayan bir komuttur, özellikle de o kayıtlara arayarak tekrar ulaşmanız gerekiyorsa. Örneğin kaydınızı "ben " şeklinde yanlışlıkla yanında bir boşlukla beraber kaydederseniz aramada "ben" olarak belirlediğiniz değişkenle kaydınız eşleşmeyecektir. O tek boşluktan dolayı farklı bir string ifade olarak algılanır.

UCase

Bu komut string ifadelerinizin küçük karakterlerini büyük karakter olarak çevirir. İngilizcedeki upper kelimesiyle alakalıdır. Örnek verecek olursak; UCase("merHaba")="MERHABA"  UCase("BEn gEldim")="BEN GELDİM"

LCase

Bu komut string ifadelerinizin büyük karakterlerini küçük karakter olarak çevirir. İngilizcedeki lower kelimesiyle alakalıdır. LCase("MerHabA")="merhaba"  LCase("BEn gEldim")="ben geldim"

Val 

Bu komut string ifadeyi sayı formatına dönüştürür. Normalde string formatında olan bir sayı ile matematik işlemlerini yapamazsınız, bu işlemleri yapmak için Val komutuna ihtiyaç vardır.Birkaç örnekle bu komutu açıklayalım.
Val("3465")=3465 , Val("23ads")=23 , Val("43addf56545")=43

Bu komut string ifadenin rakam olan kısımlarını sayı formatına dönüştürüyor fakat string ifadenin içinde harf varsa ilk harfe kadar olan rakamları sayı formatına dönüştürüp gerisini atıyor.

Bu komutlarla ilgili küçük bir örnek;

İndirmek için buraya tıklayınız.

Hepinize kolay gelsin




9 Nisan 2012 Pazartesi

Round, Int, Fix, Mid, Len Komutları.

      Merhaba dostlar.
Bu paylaşımda sizlerle round, int, fix, mid, len gibi küçük komutlardan bahsetmeye çalışacağım. Öncelikle matematik komutlarından başlamak istiyorum. Bunlar round, int ve fix komutlarıdır. Bu komutlardan round komutunu  yeni açtığınız bir visual basic uygulamasında hemen kullanırsanız hata ile karşılaşırsınız. Bu komutu kullanmak için önce Public Class bölümünün üstündeki alana bu komutun tanımlı olduğu kütüphaneyi belirtmelisiniz.


Resimde görüldüğü gibi kütüphane tanımlamaları public class kısmının üstüne yani siyah sütunla gösterilmiş kısıma yapılır. Matematik kütüphanesi tanımlamak için ise bu kısıma "Imports.System.Math" satırnı girmek yeterlidir. Bu işlemden sonra round komutunu sorunsuz bir şekilde kullanabilirsiniz. Kütüphane tanımlamadan kullanmak isterseniz de komutun başına tanımlı olduğu kütüphane yazarsınız. Örneğin "Math.Round(değ1,0)"
kütüphane tanımlamadığınızda her defasında komutun başına kütüphanesini eklemek zorunda kalırsınız.

Kullanımları

Round(5,65 , 0) =6 
Round komutu sayıların kaç basamakta yuvarlanacağına sizin karar vermenize izin veren bir komuttur. Bu örnekte sayıdan sonra virgülle ayırdığımız yerde 0 olduğu için round virgülden sonra sayı tutmadı ve hepsini yuvarladı. Mesela 0 yerine 2 yazsaydık Round(5,65 , 2) =5,65 şeklinde olurdu. 2 yerine 1 yazarsak Round(5,65 , 1) =5,6 olur. Bu komutun küçük bir özelliği de Round(5,5 , 0) =6 komutunda olduğu gibi virgülden sonra sayı tutmuyorsanız virgülden sonra 5 varsa sayıyı bir üste yuvarlıyor ama 
Round(5,55 , 1) =5,5 komutunda olduğu gibi virgülden sora bir sayı tutulduğunda ancak 6 olunca bir üste yuvarlıyor. Round(5,66 , 1) =5,7 örneğinde olduğu gibi.

Int(5,6)=5 , Int(5,9)=5 , Int(5,2)=5
Bu komut sayıyı sadece tamsayıya ve alt sınıra yuvarlar. Negatif değerler de de bu böyledir. Mesela 
Int(-5,1)=-6 bu komut sayıyı hep daha küçük olana yuvarlar. Int(-5,4)=-6 , Int(-4,3)=-5

Fix(5,6)=5 ,  Int(5,9)=5 , Int(5,2)=5
Bu komut da Int komutuyla neredeyse aynı görevi görür. Tek farkları negatif sayılardadır. Fix komutu değerleri hep "0" a doğru çeker mesela Int(-5,7)=-5 , Int(-5,4)=-5 , Int(-4,3)=-4

Len("Merhaba")=7
Len komutu string bir ifadenin kaç karakter olduğunu öğrenmemize yarar. Bu komutun püf noktası ise boşluklardır. Bu komut boşluk bıraktığınızda onu da karakter olarak algılar. 
Mesela Len("ben i")=5 , Len("be n i")=6.

Mid("merhaba",2,1)="e"
Bu komut da string ifadelerin karakterlerini tek tek elde etmede işe yarayan çok önemli bir komuttur. Mid de Len gibi boşlukları karakter olarak algılar. Bu komutun püf noktası ise string ifadeden sonra yazdığımız sayılardadır. String ifadeden sonra gelen ilk sayı hangi karakterden seçmeye başlayacağını belirler, sonraki sayı ise belirlenen karakterden sonra kaç karakter alacağına karar verir. 
Mid("merhaba",2,3)="erh" , Mid("nasılsın"1,5) ="nasıl"

Hepinize Kolay Gelsin.

Kısaca Giriş

      Merhaba arkadaşlar.
Bu blogu açmamın sebebi ise bildiğim ve öğrendiğim Visual Basic 2008 kod satırlarını kısa ve anlaşılır bir şekilde sizlerle paylaşmaktır. Zaten bununla ilgili bir çok site var diye düşünebilirsiniz ama ben çalışmam sırasındaki araştırmalarda farkettim ki bilgiler karışık ve iyi anlatılmamış,bu da beni bu yola sevketti.
     Burada sizlerle paylaşacağım şeyler sadece Visual Basic ile alakalı olmayacak Windows işletim sistemindeki bazı küçük ve yararlı bilgiler,Linux işletim sisteminden bazı bilgiler de paylaşmayı düşünüyorum. Umarım paylaştığım şeyler sizlere faydalı olur.