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.

1 yorum: