Şimdi Ara

visual basic excel makro yardım

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
10
Cevap
1
Favori
851
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba arkadaşlar size bir sorum olacak yardımcı olursanız sevinirim.

    Şimdi ben excel'de hazır makrolardan açılan liste oluşturdum ve hücre bağlantısı olarak "ek" adlı sayfadaki C2 hücresini seçtim. bir de bu hucreye excel' den ad tanımladım: basvuru

    Daha sonra yine hazır makrolardan buton ekledim ve makro ata deyip;

     
    Sub Düğme1_Tıklat()

    If basvuru = 1 Then

    Sheets("1").Select

    Else

    If basvuru = 2 Then

    Sheets("2").Select
    End If

    End If

    End Sub



    komutlarını yazdım. şimdi amacım açılır listeden değer seçtikten sonra düğmeye tıkladığımda ilgili sayfaya yönlendirmesi.
    açılır listeden hücre bağlantısına yazılan değer 1 olduğunda 1 adlı sayfaya, 2 olduğunda 2 adlı sayfa yönlendirmek istiyorum.
    kodu visual basic arayüzünde çalıştırdığımda herhangi bir hata vermiyor ancak excel de istediğim işlevi gerçekleştirmiyor.

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

    Ekran Görüntüleri;

     visual basic excel makro yardım

     visual basic excel makro yardım

    Not: Bu makro işlerine yeni girdim dolayısıyla cahile anlatır gibi anlatın



    < Bu mesaj bu kişi tarafından değiştirildi halilibo92 -- 6 Temmuz 2014; 23:34:20 >







  • ActiveWorkbook.Sheets("1").Select
    ya da
    ActiveWorkbook.Sheets("1").Activate

    ikisinden birinin olmasıl lazım.
  • quote:

    Orijinalden alıntı: CatchFire

    ActiveWorkbook.Sheets("1").Select
    ya da
    ActiveWorkbook.Sheets("1").Activate

    ikisinden birinin olmasıl lazım.

    sanırım sıkıntı if li kısımda ama problemi çözemedim çünkü 2. if yerine direk else yaptığımda her iki seçenek için de 2. sayfaya yönlendiriyor. sanırım eşitliği doğrulayamıyor.
    Sizin önerdiğiniz komutlarla da çalışmadı bu arada. teşekkürler yine de.
  • if yapısına yeni dikkat ettim, 2. if yerine 'else if 2' kullanmanız daha iyi iki kez if komutu açmaya gerek yok.
    Eğer her durumda else olan yapıya yönlendiriyorsa bu demektirki basvuru hiçbir zaman 1'e eşit olmuyor.
    basvuru değişkeninin türü nedir ve nerden değer alıyorsunuz?
  • quote:

    Orijinalden alıntı: CatchFire

    if yapısına yeni dikkat ettim, 2. if yerine 'else if 2' kullanmanız daha iyi iki kez if komutu açmaya gerek yok.
    Eğer her durumda else olan yapıya yönlendiriyorsa bu demektirki basvuru hiçbir zaman 1'e eşit olmuyor.
    basvuru değişkeninin türü nedir ve nerden değer alıyorsunuz?

    başvuru değişkenini screenshot da gözüken açılır liste otomatik oluşturuyor. Örneğin 1. seçeneği seçtiğimde başvuru hücresine 1 yazdırıyor.hücrenin tipi sayı olarak ayarlanmış durumda.
  • kodların en üstüne MSgBox(basvuru) yapıp gelen değişkenin değerini kontrol edermisin.
  • CatchFire kullanıcısına yanıt
     visual basic excel makro yardım

    bu şekilde bir ekran geliyor.

    üzerinde çalışmakta olduğum excel dosyası;
    Kitap1



    < Bu mesaj bu kişi tarafından değiştirildi halilibo92 -- 7 Temmuz 2014; 0:58:06 >




  • Yapay Zeka’dan İlgili Konular
    excel yardım
    11 yıl önce açıldı
    Visual basic satır atlama
    5 yıl önce açıldı
    Daha Fazla Göster
  • bu demekki durum adında bir değişken yok, değer gelmiyor.
    Sanırım değeri C2 hücresinden alıyorsun birde şunu dene:

       Dim deger As String 

    deger =Sheets("ek").Range("basvuru")

    MsgBox deger


    yada:


       Dim deger As Integer 

    deger =Sheets("ek").Range("$C$2").Value

    MsgBox deger



    yada bunu:


       Dim deger As String 

    deger = Sheets("ek").Range.Cells(3,2 )

    MsgBox deger



    < Bu mesaj bu kişi tarafından değiştirildi CatchFire -- 7 Temmuz 2014; 1:02:55 >
  • CatchFire kullanıcısına yanıt
    Tamamdır şu an oldu. Kod tamamen çalışıyor.Yardımların için çok teşekkürler üstad.

     
    Sub Düğme1_Tıklat()

    Dim deger As Integer

    deger = Worksheets("ek").Range("$C$2").Value

    If deger = 1 Then

    Sheets("1").Select

    Else

    If deger = 2 Then

    Sheets("2").Select
    End If

    End If

    End Sub




    < Bu mesaj bu kişi tarafından değiştirildi halilibo92 -- 7 Temmuz 2014; 1:05:36 >
  • MErhabalar benim de bir sorum olacak,

    activecell.formulaR1C1="=text(R[]C[])" burda köşeli parantezlerin içine değişken atayabiliyor muyuz acaba?
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.