Şimdi Ara

VBA & Excel ve Makrolar Örnekler Sorunlar (3. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir (1 Mobil) - 2 Masaüstü1 Mobil
5 sn
78
Cevap
3
Favori
147.656
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
1 oy
Öne Çıkar
Sayfa: önceki 1234
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • sayın serseri benim sorumun yaklaşık 14 000 satırlık bir excell sayfam var bu sayfanın adı personel1

    a sütunu sıra no
    b sütunu ad
    c sütunu soyad
    d sütunu tc kimlik no

    ve başka bir excell dosyasından bu dosyanın adı denetim1 denetim birdeki tc kimliknoları personel1 in ı sütununa kopyalıyorum ve bu tc kimlikleri tek tek kopyalayıp bul seçeneği ile arayıp varsa işaretliyorum bunu VB ile nasıl yaparım

    yani şöyle bişey yapmak istiyorum ı sütunundaki bilgileri d sutunu ile karşılaştır ve eşleşenler varsa örneğin d11 de eşleşen veri varsa e11 bir işaret koysun veya 11. satırın rengini değiştirsin bunu nasıl yapabilirim yardımcı olursanız sevinirim
  • Selam arkadaşlar yardımcı olursanız çok sevinirim. Sorum şu:

    Bir hücreye bir kod yazıldığında diğer belirttiğim hücrelerde yine benim belirtmiş olduğum o kodlu ürüne ait bilgiler bilgiler otomatik olarak gelsin. Teşekkür ederim
  • quote:

    Orijinalden alıntı: serseri

    http://www.mousetrax.com/TechCourses.html

    adresinden ücretsiz e-kitap indirebilirsiniz. Baya işe yarar, fakat hatırlatayım dil malesef ingilizce...


    http://www.mindspring.com/~tflynn/excelvba.html

    sitesinde örnek kodlar mevcut


    http://wordtips.vitalnews.com/W189_VBA_Examples.html

    bu sitede de güzel kodlar mevcut

    hocam bu sayfayı yeni görüyroum bunları yaptım çalışıyor eline sağlık

    sadece benim sorum kayıtlardan herhangi birisini seçip değiştirmek istersek nasıl yapacagız

    yardımcı olursanız seviirim

    şimdiden teşekkürler




  • Userform Kullanımı

    VBA önemli noktalardan biriside userform kullanımıdır. Nasıl Visual Basicte userformlarla çalışılıyorsa Excel içine de userformu ekleyerek kod yazıp form yapabiliriz.

    Yeni bir form tasarlayabilmek için Visual Basic Düzenleyicisinden Insert bölümünden Userform'u seçebiliriz. Karsımıza bir form gelecektir. Bu form bilinen boş bir Visual Basic sayfasıdır. Buraya yine text box,command button gibi visual basice hitap eden kontroll menülerini koyabiliriz.

    örnek olarak basit bir liste hazırlayacagız. Bunun için formumuza Kaydet,Formu Temizle ve Çıkış butonları ekledik. Liste olarak ben öğrenci listesi düşündüm. Siz personel listesi,malzeme listesi gibi farklı (ihtiyaca göre) listeler tasarlayabilirsiniz.

    Programın çalışır haldeki ekran görüntüsü şu şekildedir;



    Görüldüğü gibi forma öğrencileri ait bilgileri girmek üzere Adısoyadı,doğum tarihi ve yeri gibi (bunlar çoğaltılabilir) bilgilerin girişi için textboxlar eklenmiştir.

    Program adımında ilk userforma giriş yapmamızı sağlayan bir command butonu ekliyoruz. Öğrenci Bilgileri isimli bu buton ile frmogrenci adını verdiğimiz userforma ulasabiliyoruz. Bu butonu kodları ise

    Private Sub CommandButton1_Click()
    Sheets("deneme").Select
    frmogrenci.Show
    End Sub

    şeklindedir. Burada excel çalışma sayfasını ben "deneme" ismiyle kaydettiğim için böyledir.

    Daha sonra formda yer alan üç butonun kodları ise şu şekildedir. (Bu kodları VB düzenleyici içinde kodlar sayfasının solunda yer alan menüde FORMS içinde bulunan "frmogrenci" formunun içindeki yerlere yazıyoruz)

    Yeni Kayıt Ekle ;

    Private Sub cmdkayit_Click()
    Range("a2").Select
    Do While Not IsEmpty(ActiveCell)
    ActiveCell.Offset(1, 0).Select
    Loop
    If Range("a2").Value = "" Then
    Range("a2").Value = 1
    Range("a2").Select
    Else
    ActiveCell.Value = ActiveCell.Offset(-1, 0).Value + 1
    End If
    ActiveCell.Offset(0, 1).Value = txtogradi
    ActiveCell.Offset(0, 2).Value = txtdtarihi
    ActiveCell.Offset(0, 3).Value = txtdyeri

    aciklama = "Kayıt İşlemi Başarıyla Tamamlandı"
    dugme = vbOKOnly + vbInformation + vbDefaultButton1
    baslik = "kayit"
    MsgBox aciklama, dugme, baslik
    End Sub

    Yeni verilerin a2 hücresinden baslayacagı düsünülerek tasarlanmıştır. A2 bos ise "textogradi" değeri B' hücresine eklenmektedir. Mantık bu şekildedir. Bunun için DO WHILE döngüsü kullanılmıştır.

    Kayıt sonundda İşlem tamamlandı uyarısını içeren MsgBox eklenmiştir.

    Formu Temizle;

    Private Sub cmdtemizle_Click()
    txtogradi = ""
    txtdtarihi = ""
    txtdyeri = ""
    End Sub

    Bu buton daha önceki kayıttan kalan bilgilerin temizlenmesini sağlamaktadır.

    Çıkış;

    Private Sub CommandButton3_Click()
    Unload frmogrenci
    End Sub

    Formdan çıkışı sağlamaktadır.



    Basit ve kısa zamanda hazırlanmış birşey oldugundan sorun çıkabilir. Örneğin aynı isim yanlıslıkla iki kere eklenebilir. (Bunun için ayrı kod gerekir) ya da hücrelerde gereksiz doluluklar sistemin bütünlüğünü bozabilir.

    Elbetteki çeşitli kodlarla bütün bu aksaklıklar düzeltilebilir ve hatta genişletilebilir bu da VBA meraklılarına kalmış bir iştir....


    BURADAKİ VERİLERİ DEĞİŞTİRMEK İÇİN NASIL BİR MAKRO YAZACAGIZ YARDIMICI OLURSANIZ SEVİNİRİM




  • Benim bir sorum olacak.
    A sütun da 800 adet veri var alt alta
    bunlardan ilk 8 satır ad, boşluk, adres, telefon, faks, sayfa,boşluk, boşluk
    sonrası yine ad diye başlıyor.
    bunları kopyala özel yapıştır ve transpose ile tek tek yapabiliyorum.
    bu Loop u nasıl otomatik hale getirebilirim.
    makro konusunda pek bi bilgim yok
    teşekkür ederim.
  • quote:

    Orijinalden alıntı: zerodown

    Benim bir sorum olacak.
    A sütun da 800 adet veri var alt alta
    bunlardan ilk 8 satır ad, boşluk, adres, telefon, faks, sayfa,boşluk, boşluk
    sonrası yine ad diye başlıyor.
    bunları kopyala özel yapıştır ve transpose ile tek tek yapabiliyorum.
    bu Loop u nasıl otomatik hale getirebilirim.
    makro konusunda pek bi bilgim yok
    teşekkür ederim.

    Yukarıdaki "serseri" yazılı FOR NEXT döngüsü işini görecektir hocam...
  • Biraz daha yardımcı olurmusunuz serseri hocam?

    dediğim gibi 8 satırlık döngüm var

    kopyala, özel yapıştır ve transpose işelmini de sizin yukarıdaki yazınızdan öğrendim
    bunu makronun içine nası yazacağımı bilmiyorum.

    Yardımcı olursanız sevinirim
  • quote:

    Orijinalden alıntı: fleam

    Selam arkadaşlar yardımcı olursanız çok sevinirim. Sorum şu:

    Bir hücreye bir kod yazıldığında diğer belirttiğim hücrelerde yine benim belirtmiş olduğum o kodlu ürüne ait bilgiler bilgiler otomatik olarak gelsin. Teşekkür ederim

    Düşeyara formulünü kullanabilirsiniz
  • merhaba üstadlar,

    excel de yapmak istediğim birkaç hesaplama ve aktarma işlemi var ve vba konusunda pek bilgi sahibi değilim öğrenmeye çalışıyorum.

    bir çalışma kitabında araç yakıt giderleri üzerine bir dosya tutuyorum. her araç için ayrı bir çalışma sayfası var. ilk sütünda yakıtın alındığı tarih 2. sütunda miktar ve 3. sütunda tutar var. her ayın sonunda da o aya ait toplam yakıt gideri mevcut. Bu şekilde her ay içindeki giderler ve aylık tutarlar takip edilecek. yapmak istediğim aşağıya doğru 10. ay, 11. ay... diye devam eden tüm satırları sağ tarafta otomatik olarak alt alta görebilmek için yeni bir sütuna aktarmak istiyorum. makro kaydet komutuyla bu işlemi yapamıyorum çünkü bazı araçlarda 3 bazı araçlarda daha az yada fazla yakıt alınmış. dolayısıyla seçtiğim satır her zaman toplam tutara denk gelmiyor. ihtiyacım olan 10. ay yazan satırın yanındaki içeriği şu satıra kopyala, 11. ay yazan satırın yanındaki satır içeriğini altına kopyala gibi birşey. umarım açıklayabilmişimdir.

    yardımlarınız için şimdiden teşekkürler...

     VBA & Excel ve Makrolar Örnekler Sorunlar




  • quote:

    Orijinalden alıntı: megmeg

    merhaba üstadlar,

    excel de yapmak istediğim birkaç hesaplama ve aktarma işlemi var ve vba konusunda pek bilgi sahibi değilim öğrenmeye çalışıyorum.

    bir çalışma kitabında araç yakıt giderleri üzerine bir dosya tutuyorum. her araç için ayrı bir çalışma sayfası var. ilk sütünda yakıtın alındığı tarih 2. sütunda miktar ve 3. sütunda tutar var. her ayın sonunda da o aya ait toplam yakıt gideri mevcut. Bu şekilde her ay içindeki giderler ve aylık tutarlar takip edilecek. yapmak istediğim aşağıya doğru 10. ay, 11. ay... diye devam eden tüm satırları sağ tarafta otomatik olarak alt alta görebilmek için yeni bir sütuna aktarmak istiyorum. makro kaydet komutuyla bu işlemi yapamıyorum çünkü bazı araçlarda 3 bazı araçlarda daha az yada fazla yakıt alınmış. dolayısıyla seçtiğim satır her zaman toplam tutara denk gelmiyor. ihtiyacım olan 10. ay yazan satırın yanındaki içeriği şu satıra kopyala, 11. ay yazan satırın yanındaki satır içeriğini altına kopyala gibi birşey. umarım açıklayabilmişimdir.

    yardımlarınız için şimdiden teşekkürler...

     VBA & Excel ve Makrolar Örnekler Sorunlar


    Valla ben anlamadım ama sana söyle birşey tavsiye ederim burada makro kullanmak yerine
    süz kullanabilirsiniz.
    yada daha detaylı acıklama yapabilir misin




  • quote:

    Orijinalden alıntı: haker01

    quote:

    Orijinalden alıntı: megmeg

    merhaba üstadlar,

    excel de yapmak istediğim birkaç hesaplama ve aktarma işlemi var ve vba konusunda pek bilgi sahibi değilim öğrenmeye çalışıyorum.

    bir çalışma kitabında araç yakıt giderleri üzerine bir dosya tutuyorum. her araç için ayrı bir çalışma sayfası var. ilk sütünda yakıtın alındığı tarih 2. sütunda miktar ve 3. sütunda tutar var. her ayın sonunda da o aya ait toplam yakıt gideri mevcut. Bu şekilde her ay içindeki giderler ve aylık tutarlar takip edilecek. yapmak istediğim aşağıya doğru 10. ay, 11. ay... diye devam eden tüm satırları sağ tarafta otomatik olarak alt alta görebilmek için yeni bir sütuna aktarmak istiyorum. makro kaydet komutuyla bu işlemi yapamıyorum çünkü bazı araçlarda 3 bazı araçlarda daha az yada fazla yakıt alınmış. dolayısıyla seçtiğim satır her zaman toplam tutara denk gelmiyor. ihtiyacım olan 10. ay yazan satırın yanındaki içeriği şu satıra kopyala, 11. ay yazan satırın yanındaki satır içeriğini altına kopyala gibi birşey. umarım açıklayabilmişimdir.

    yardımlarınız için şimdiden teşekkürler...

     VBA & Excel ve Makrolar Örnekler Sorunlar


    Valla ben anlamadım ama sana söyle birşey tavsiye ederim burada makro kullanmak yerine
    süz kullanabilirsiniz.
    yada daha detaylı acıklama yapabilir misin


    cevabın için teşekkürler haker01. sanırım süz kullanmak daha doğru olacak dediğin gibi. ama şöyle bi açıklama daha yapayım. ekteki resimde görüldüğü gibi "A" sütununda tarih "B" sütununda Litre ve "C" sütununda tutar yazıyor. Her ayın sonunda ekteki resimde olduğu gibi "A" sütununda kaçıncı ay olduğu "B" sütununda o ay kullanılan toplam yakıt litre olarak ve "C" sütununda toplam yakıt tutar olarak gözüküyor. Bu aşağıya doğru uzayıp gidecek. Her ay sonunda "A" sütununda hangi ay olduğu, "B" ve "C" sütunlarında toplamlar yazacak. Benim istediğim bu toplamları aynı çalışma sayfasında boş bi yere alt alta sıralamak, sadece aylık toplam tutarları. Atıyorum "E1" 'de 10. Ay yazacak "F1" 'de 10. ay toplam tutarı, "E2" 'de 11. Ay yazacak "F2" 'de 11. ay toplam tutarı vs.

    tekrardan teşekkürler.

     VBA & Excel ve Makrolar Örnekler Sorunlar




  • Alt toplam işinizi görecektir
    a sütununa ay olarak ekleme yaparsanız cok kısa sürecektir.



     VBA & Excel ve Makrolar Örnekler Sorunlar
  • ilgine çok teşekkürler haker01. dediğin gibi bu şekilde çok daha rahat...
  • quote:

    Orijinalden alıntı: megmeg

    ilgine çok teşekkürler haker01. dediğin gibi bu şekilde çok daha rahat...

    rica ederim
    excel konusunda ne zaman yardım isterseniz aklımızın yettiğince yardımcı oluruz.
  • iyi günler arkadaşlar excel konusunda benim de bir yardıma ihtiyacım var çok acil olarak. benim dolu bir sütunum var. ben bu dolu sütundaki hücrelerin içeriğine 257 rakamını eklemek istiyorum. yani hücre içerikleri 257 ... olacak şekilde.bunu nasıl yapabilirim?örneğin sütunumdaki hücrelerde 3, alttaki hücrede 12 daha alttakinde 15 olsun.ben bu hücrelerin başına 257 rakamını ekleteyim. mevcut hüzreler 257 3, alttaki hücre 257 12, daha alttaki 257 15 şeklinde olsun.nasıl yapabilirim?teşekkürler
  • ben userforma eklediğim textboxlarla excel e verileri aktarıp üye kaydımı yapıyorum ancak bu kayıtları geri çağrıp üye girişi kısmını yapmak istiyorum bu konuda bana yardım edebilirmisiniz...
  • quote:

    Orijinalden alıntı: mkarpuz61

    iyi günler arkadaşlar excel konusunda benim de bir yardıma ihtiyacım var çok acil olarak. benim dolu bir sütunum var. ben bu dolu sütundaki hücrelerin içeriğine 257 rakamını eklemek istiyorum. yani hücre içerikleri 257 ... olacak şekilde.bunu nasıl yapabilirim?örneğin sütunumdaki hücrelerde 3, alttaki hücrede 12 daha alttakinde 15 olsun.ben bu hücrelerin başına 257 rakamını ekleteyim. mevcut hüzreler 257 3, alttaki hücre 257 12, daha alttaki 257 15 şeklinde olsun.nasıl yapabilirim?teşekkürler

    Selam,

    Aşağıdaki kodu vba sayfasında modül olarak ekleyin ve "2" yerine sizin dolu sütununuzun numarasını yazın :
    Sub ekle()
    For i = 1 To Cells(65536, 2).End(xlUp).Row
    Cells(i, 2) = "257 " & Cells(i, 2)
    Next
    End Sub




  • benim bir sorum vardı yardımcı olabilir misiniz ?
    dershaneye kayıt yaptıran öğrencilerin kayıt tarihi, okulunun adı, ve sınıfının bulunduğu bir excell listesinden belirtilen tarihler arasında hangi okuldan hangi sınıfatan kaçar öğrencinin kayıt yaıtırdığını nasıl bir makro ile buluruz.
    teşekkür ederim

    örnek.
    01.01.2010 Atatürk lisesi 1. sınıf
    01.01.2010 Atatürk lisesi 3. sınıf
    02.01.2010 Atatürk lisesi 4. sınıf
    03.01.2010 anadolu lisesi 3. sınıf
    05.01.2010 Atatürk lisesi 1. sınıf
  • arkadaşlar merhaba,
    excelde bir sütunun isimlerle dolu olduğunu düşünelim. komşu sütunda isimlerin karşılarında da yaşları olsun. ben ayrı bir çalışma sayfasında bir sütuna o isimlerden birini yazdığım zaman başka bir sütuna yaşını otomatik olarak nasıl getirebilirim? yani algoritma kısaca şu. örnek " A3 sütunu "sercan" ise B5 sütunu "mevcut tabloda ki yaş değeri" olsun.. yardımcı olursanız çok sevinirim.
  • quote:

    Orijinalden alıntı: nankospitus

    arkadaşlar merhaba,
    excelde bir sütunun isimlerle dolu olduğunu düşünelim. komşu sütunda isimlerin karşılarında da yaşları olsun. ben ayrı bir çalışma sayfasında bir sütuna o isimlerden birini yazdığım zaman başka bir sütuna yaşını otomatik olarak nasıl getirebilirim? yani algoritma kısaca şu. örnek " A3 sütunu "sercan" ise B5 sütunu "mevcut tabloda ki yaş değeri" olsun.. yardımcı olursanız çok sevinirim.

    çözüm bulunmuştur. =+ARA("sercan";A1:A12;B1:B12) A1 den A12 kadar olan hücrelerde "sercan" arıyor bulunca da karşısında ki değeri kullanıyor.
  • 
Sayfa: önceki 1234
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.