Hallo an alle,
vllt. könnt ihr mir helfen. Habe schon Stunden im Internet verbracht und komme auf keine Lösung.
Um ein Formular im Excel mittels einer DB auszufüllen, habe ich dynamische Dropdown-Felder erstellt. Das funktioniert alles soweit gut. Nun habe ich allerdings das Problem, dass mittels Makro beim ändern des Wertes in diesem Feld das Anpassungs-Makro automatisch gestartet werden soll.
Es soll folgendes nacheinander ausgeführt werden:
alle Zeilen in einem Bereich wieder eingeblendet werden
alle Zellen in einem Bereich automatisch in der Höhe angepasst werden
alle Zeilen in denen in Spalte A keine 1 steht ausgeblendet werden.
Die 3 einzelnen Makros funktionieren einzeln und machen was sie sollen. (Getestet mit Makro-Schaltbutton"
Wenn ich jedoch versuche diese zu einem zu kombinieren wird nur noch alles eingeblendet.
Danke schon mal für eure Hilfe :)
das sind die einzelnen Makros:
Sub Drucklayout()
'Dim Zelle As Range
'Dim ws As Worksheet
'Set ws = ThisWorkbook.ActiveSheet
Call Einblenden1
Call Ende
Call Anpassen
Call Ende
Call Ausblenden1
Call Ende
End Sub</pre>
Sub Einblenden1()
Dim Zelle As Range
Dim ws As Worksheet
Set ws = ThisWorkbook.ActiveSheet
For Each Zelle In ws.Range("a1:a131").Cells
If Zelle = "" Then
Rows(Zelle.Row).Hidden = False
End If
Next
End Sub</pre>
Sub Ausblenden1()
Dim Zelle As Range
Dim ws As Worksheet
Set ws = ThisWorkbook.ActiveSheet
For Each Zelle In ws.Range("a1:a131").Cells
If Zelle = "" Then
Rows(Zelle.Row).Hidden = True
End If
Next
End Sub</pre>
Sub Anpassen()
ActiveSheet.Range("c6:c131").Rows.EntireRow.AutoFit
End Sub</pre>
Sub Ende()
End
End Sub</pre>
und darüber werden sie ausgeführt:
Private Sub Worksheet_Change(ByVal Target As Range)
'If Not Intersect(Target, Range("E6", "E8")) Is Nothing Then
'Application.Run ("Einblenden")
'End If
If Not Intersect(Target, Range("E6", "E8")) Is Nothing Then
Application.Run ("Drucklayout")
End If
End Sub</pre>
Die ausgeklammerten Zeilen können ignoriert werden, die waren bloß zum Test. :)
Die ausgeklammerten Zeilen können ignoriert werden, die waren bloß zum Test. :)
|