• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Makro ile başka sayfada satır gösterme gizleme

  • Konbuyu başlatan Konbuyu başlatan bates54
  • Başlangıç tarihi Başlangıç tarihi
Katılım
4 Aralık 2008
Mesajlar
6
Excel Vers. ve Dili
11 türkçe
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B6")) Is Nothing Then Exit Sub
If Range("B6") = "" Then
Call gizle
Else
Call göster
End If
End Sub
Sub gizle()
Sheets("İlk Oturum").Range("A18:A19:A20:A21").Select
Selection.EntireRow.Hidden = True
Range("B6").Select
End Sub
Sub göster()
Sheets("İlk Oturum").Range("A18:A19:A20:A21").Select
Selection.EntireRow.Hidden = False
Range("B6").Select
End Sub

İyi günler "İlk oturum" sayfasında hata veriyor kodun doğru yazılışı nasıl olmalı arkadaşlar.
 
Kodların hangi sayfada çalışmasını istiyorsanız o sayfanın adını sağ tıklatın "Kod Göster" seçin, açılan sayfaya aşağıdaki kodları kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B6")) Is Nothing Then Exit Sub
    If Range("B6") = "" Then
        Call Gizle_Goster(False)
    Else
        Call Gizle_Goster(True)
    End If
End Sub
Sub Gizle_Goster(x As Boolean)
    Range("A18:A19:A20:A21").EntireRow.Hidden = x
End Sub
 
Kodların hangi sayfada çalışmasını istiyorsanız o sayfanın adını sağ tıklatın "Kod Göster" seçin, açılan sayfaya aşağıdaki kodları kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B6")) Is Nothing Then Exit Sub
    If Range("B6") = "" Then
        Call Gizle_Goster(False)
    Else
        Call Gizle_Goster(True)
    End If
End Sub
Sub Gizle_Goster(x As Boolean)
    Range("A18:A19:A20:A21").EntireRow.Hidden = x
End Sub

teşekkürler dalgalıkur. benim amacım örnek, sayfa1 de B6 hücresine veri girdiğinde İlk Oturum sayfasında A18:A19:A20:A21 hücrelerini göstermesi. veri olmadığında ilgili hücreleri saklaması
 
O zaman şu kodu kullanın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B6")) Is Nothing Then Exit Sub
    If Range("B6") = "" Then
        Call Gizle_Goster(False)
    Else
        Call Gizle_Goster(True)
    End If
End Sub
Sub Gizle_Goster(x As Boolean)
    Worksheets("İlk Oturum").Range("A18:A19:A20:A21").EntireRow.Hidden = x
End Sub
 
Allah razı olsun Dalgalıkur bu şekilde düzenleyince oldu. Seni yoruyorum ama son olarak command Button a atama yapmak için nasıl değiştirebiliriz kodu
 
Allah senden de razı olsun.
Bence bu gibi konulardan önce Excel dershanesi bölümünü inceleyip öğrenmeye çalışmalısın.
Hem bu vesile ile anında basit sorunların üstesinden gelebilirsin

Oluşturduğun UserForm a CommandButton1 adında bir buton ekle ve kod kısmına aşağıdaki kodları kopyala.

Kod:
Private Sub CommandButton1_Click()
    Dim Gizle As Boolean
    If Range("B6") = "" Then
        Gizle = False
    Else
        Gizle True
    End If
    Worksheets("İlk Oturum").Range("A18:A19:A20:A21").EntireRow.Hidden = Gizle
End Sub
 
O zaman şu kodu kullanın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B6")) Is Nothing Then Exit Sub
    If Range("B6") = "" Then
        Call Gizle_Goster(False)
    Else
        Call Gizle_Goster(True)
    End If
End Sub
Sub Gizle_Goster(x As Boolean)
    Worksheets("İlk Oturum").Range("A18:A19:A20:A21").EntireRow.Hidden = x
End Sub

İnan ki 1 haftadır sürekli dolaşıyorum sitede çok faydalandım ama bu sefer işin içinden çıkamamıştım.Alıntı yaptığım kod ile ilgili koda ilave olarak B8 hücresinin A22:A23:A24:A25 satırlarını gizlemesi için aynı işlevi yapmak istedim hata verdi. Aynı kod ile "İlk oturum sayfasında" B6 hücresinin A18:A19:A20:A21 satırları B8 hücresinin A22:A23:A24:A25 satırlarını gizleyip açması için ne yapılmalı.
 
Aşağıdaki kodu kullanabilirsin.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B6")) Is Nothing Or Not Intersect(Target, Range("B8")) Is Nothing Then
        If Target = "" Then
            Call Gizle_Goster(False, Target.Address)
        Else
            Call Gizle_Goster(True, Target.Address)
        End If
    End If
End Sub
Sub Gizle_Goster(x As Boolean, Adres As String)
    If Adres = "$B$6" Then
        Worksheets("İlk Oturum").Range("A18:A19:A20:A21").EntireRow.Hidden = x
    ElseIf Adres = "$B$8" Then
        Worksheets("İlk Oturum").Range("A22:A23:A24:A25").EntireRow.Hidden = x
    End If
End Sub
 
Kırmızı yerleri böyle yapın.:cool:
Kod:
If Adres = "$B$6" Then
        Worksheets("İlk Oturum").Range("[B][COLOR="Red"]A18:A21[/COLOR][/B]").EntireRow.Hidden = x
    ElseIf Adres = "$B$8" Then
        Worksheets("İlk Oturum").Range("[B][COLOR="red"]A22:A25[/COLOR][/B]").EntireRow.Hidden = x
    End If
 
Merhaba arkadaşlar ekteki word belgesinde banka talimatı dosyası var.
Yapmak istediğim örneğin A Bankasına ait TL Usd ve Euro hesabı var combobox ile bunlardan seçim yaparak hangi hesaptan para çekilecekse onu seçmek istiyorum.
Parayı çekecek olan kişiyide listeden seçmek istiyorum.Tc Kimlik noyuda listeden seçmek istiyorum.Yardımcı olursanız sevinirim.Şimdiden teşekkürler
 

Ekli dosyalar

Geri
Üst