Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

Leerzeilen in VBA unter Bedingung ergänzen
#1
Hallo zusammen,

Folgendes Worksheet habe ich bisher:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("I1")) Is Nothing Then

     Cells.EntireRow.Hidden = False

     If Range("I1").Value = "Angebots-LV" Then
          Rows("33:43")-EntireRow.Hidden = True
          Rows("73:98")-EntireRow.Hidden = True

     End If

End If

End Sub

Die andere Auswahl in "I1" wäre "Auftrags-LV"
Ich benötige, wenn ich die Zeilen 73 bis 98 ausblende für meine Formatierung insgesamt 24 Leerzeilen, damit das Unterschriftenfeld nicht, durch das ausblenden, hoch rutscht. 
Die Tabelle soll in der Auswahl "Auftrags-LV" unverändert bleiben.

Auf Lösungsansätze bin ich gespannt.

Vielen Dank
Antworten Top
#2
Hallo,

ich würde das so lösen, dass die Unterschriftenzeile mit dem Ausblenden eine entsprechende Höhe erhält, die dann beim Einblenden der Zeilen 73 bis 98 wieder auf die normale Höhe zurückgestellt wird.
Zum Beispiel so:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("I1")) Is Nothing Then

     Cells.EntireRow.Hidden = False

     If Range("I1").Value = "Angebots-LV" Then
          Rows("33:43")-EntireRow.Hidden = True
          Rows("73:98")-EntireRow.Hidden = True
          Rows("99:99").RowHeight = 342,00           <-- die Höhe nach Bedarf anpassen
     End If

End If

End Sub

Die Rückstellung erfolgt dann an der Stelle, wo die Zeilen 73 bis 98 wieder eingeblendet werden mit:
Rows("99:99").RowHeight = 14.25                       <-- Standardzeilenhöhe
[Bild: attachment-190.gif]
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
[-] Folgende(r) 1 Nutzer sagt Danke an Glausius für diesen Beitrag:
  • MSchulz98
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste