Makro über mehere Mappen
31.07.2003 19:41:16
Markus
ich habe mir mit Eurer Hilfe (bin nicht so ein grosses VBA Genie) folgendes Makro zusammengestellt:
~begin~
Sub EinAusblenden_partner_sp()
Dim apartner As Byte
Dim epartner As Byte
Dim WS1 As Worksheet, WS2 As Worksheet
Set WS1 = Workbooks("Mappe1.xls").Worksheets("Allgemein")
Set WS2 = Workbooks("Mappe2.xls").Worksheets("Fzg-Übersicht")
'angeschlossene Partner zeigen / verbergen
For apartner = 24 To 68
If WS1.Cells(apartner, 27) = 1 Then
WS2.Columns(((apartner - 23) * 3) + 34).EntireColumn.Hidden = False
WS2.Columns(((apartner - 23) * 3) + 35).EntireColumn.Hidden = False
WS2.Columns(((apartner - 23) * 3) + 36).EntireColumn.Hidden = False
Else
WS2.Columns(((apartner - 23) * 3) + 34).EntireColumn.Hidden = True
WS2.Columns(((apartner - 23) * 3) + 35).EntireColumn.Hidden = True
WS2.Columns(((apartner - 23) * 3) + 36).EntireColumn.Hidden = True
End If
Next apartner
'eigene Partner zeigen / verbergen
For epartner = 24 To 33
If WS1.Cells(epartner, 28) = 1 Then
WS2.Columns(((epartner - 23) * 3) + 169).EntireColumn.Hidden = False
WS2.Columns(((epartner - 23) * 3) + 170).EntireColumn.Hidden = False
WS2.Columns(((epartner - 23) * 3) + 171).EntireColumn.Hidden = False
Else
WS2.Columns(((epartner - 23) * 3) + 169).EntireColumn.Hidden = True
WS2.Columns(((epartner - 23) * 3) + 170).EntireColumn.Hidden = True
WS2.Columns(((epartner - 23) * 3) + 171).EntireColumn.Hidden = True
End If
Next epartner
End Sub
~end~
Dieses funktioniert auch super, ich habe bloß ein Problem noch.
Ich möchte dass dieses Makro in der Mappe
Mappe2
Mappe3
Mappe4
Mappe5
Mappe6
läuft, ich müsste also irgendwie in der Laufzeit die Variable verändern, wie kann ich dies erreichen oder kann ich dies auch anders machen.
Es kann vielleicht auch so sein dass in jeder offenen Mappe, sofern dort dass Blatt "Fzg-Übersicht" vorhanden ist, dieses Makro läuft, aber wie mache ich dass dann mit den variablen.
Vielleicht habt Ihr eine Idee?!
Danke schonmal
Markus