AW: Set Bereich ... wie global gültig?
11.08.2007 10:23:00
Peter
Hallo zusammen
Habe das mit dem Public Bereich as Range noch nicht ganz begriffen, das heisst, es funktioniert noch nicht.
Ich möchte nach Ablauf des Makros den Bereich auch nicht auf Nothing stellen, denn die Bereichsnamen werden in einer anderen Tabelle in einer Formelabfrage gebraucht (SVERWEIS).
Dieser Makro habe ich in einer Tabelle hinterlegt, da er nur ausgeführt werden soll, wenn das Worksheet verlassen wird. Dann ist sichergestellt, dass die definierten Bereiche immer aktuell sind.
Was muss ich ändern, dass es nicht bei den lokalen Bereichsnamen bleibt?
Gruss, Peter
Option Explicit
Public bereich As Range
Private Sub Worksheet_deactivate()
Dim Bereich As Range
Dim strANF As String
Dim strEND As String
strANF = 6
strEND = Sheets(Tabelle2.Name).Cells(65536, 1).End(xlUp).Row 'ermittelt letzten _
Eintrag in Spalte A (Pfad)
strEND = WorksheetFunction.Max(strEND, 1) 'falls _
keine Daten vorhanden, wird Zeile 1 benannt
Set Bereich = Sheets(Tabelle2.Name).Range("A" & strANF, "A" & strEND)
Names.Add _
Name:="xValNr", _
RefersTo:=bereich, Visible:=True
Set Bereich = Sheets(Tabelle2.Name).Range("B" & strANF, "B" & strEND)
Names.Add _
Name:="xTitBez", _
RefersTo:=bereich, Visible:=True
Set Bereich = Sheets(Tabelle2.Name).Range("A" & strANF, "J" & strEND)
Names.Add _
Name:="xDaten", _
RefersTo:=bereich, Visible:=True
End Sub