Excel'de yalnızca seçilen satırları VBA Makroları kullanarak genişletme


0

Hücre # = "Evet" ise alt satırı genişletin, Hücre # = "Hayır" ise alt satırı daraltın.

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("E15").Value = "Yes" Then
ActiveSheet.Outline.ShowLevels RowLevels:=3
ElseIf Range("E15").Value = "No" Then
ActiveSheet.Outline.ShowLevels RowLevels:=8
End If
End Sub

Şimdi bu sorunsuz bir şekilde çalışıyor gibi görünüyor, ancak bir nedenden ötürü kodda gösterildiği gibi aynı Satır Düzeyinde bulunan tüm satırları genişletip daraltıyor, gerçekten istediğim tam olarak hangi satırı seçmek istediğimi seçebilmektir duruma göre genişletin ve daraltın. '

Gördüğünüz gibi VB Pro'dan pek değilim, ancak herhangi bir yardım çok faydalı olacaktır.

Teşekkürler!


Soruyu anlamakta sorun yaşıyorum. Bir hücrenin "evet" veya "hayır" olacağı satır gruplarına sahipsiniz ve bu grubu genişletmesini mi istiyorsunuz, yoksa grubun son satırını mı görmek istiyorsunuz?
Raystafarian

Yanıtlar:


0

Seni doğru anlarsam, onu ayarlayabilir ve açabilirsin. ShowDetails Anahatınızdaki belirli özet satırları genişletme ve daraltma özelliği.

Aşağıda gösterildiği gibi, Showdetails bir anahat içindeki bütün bir satırın (veya sütunun) okuma / yazma özelliğidir. Belirli bir özet satırının detayını göstermek için, bu satırdaki tek bir hücreye aşağıdaki örnek kodda gösterildiği gibi başvurun. Zaten genişletilmiş bir özet düzeyi için özelliği True olarak ayarlamaya çalışırsanız, Excel hata verir. Özet satırı görünmüyorsa, daha büyük bir grup içinde daraltılmışsa, Showdetails (sessizce) satırı genişletemez.

Option Explicit

Sub Worksheet_Change(ByVal Target As Range)
    With ActiveSheet
        If .Range("E15").Value = "Yes" Then
            With .Range("A26").EntireRow
                If .ShowDetail = False Then
                    .ShowDetail = True
                End If
            End With
        ElseIf Range("E15").Value = "No" Then
            With .Range("A45").EntireRow
                If .ShowDetail = False Then
                    .ShowDetail = True
                End If
            End With
        End If
    End With
End Sub
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.