Empfehlungsergänzung
27.11.2017 02:36:01
Luc:-?
Die Dummy-Zahlen könnten natürlich auch per ZUFALLSZAHL bzw ~BEREICH in der Geheimzahl analoger Form gebildet wdn. Die in einem bestimmten Feld wird dann mit der eingegebenen überschrieben, was besser in Form einer MatrixKonstante geschieht, die als normale Fml angelegt wird. In der folgd Bsp-EreignisProzedur ist das sogar eine, die (als plurale MatrixFml berechnet) eine quadratische Matrix mit 4 Elementen ergeben würde, nämlich {zz.0;0.gz}, wobei zz eine Zufalls- und gz die GeheimZahl ist:
Private Sub Worksheet_Change(ByVal Target As Range)
Const adEndSNb$ = "ZZ1000", adInpSNb$ = "A1", naTabSNb$ = "vhs"
Dim wb As Workbook, ws As Worksheet
If Not Intersect(Target, Me.Range(adInpSNb)) Is Nothing Then
Randomize
With Application
.EnableEvents = False
Set wb = Me.Parent: Set ws = wb.Sheets(naTabSNb)
ws.Range(adEndSNb).Formula = "={" & Int(Rnd * 10 ^ 5) & _
",0;0," & Target & "}"
If ws.Visible
Um die GeheimZahl dort auszulesen, können Eingeweihte und Berechtigte dann folgd UDF in einer ZellFml benutzen:
Function SelArVal(Bezug As Range, ByVal avKoorX As Long, _
Optional ByVal avKoorS As Long)
Dim erg
On Error GoTo ex
erg = Evaluate(Bezug.Formula)
If IsArray(erg) Then
If avKoorX > 0 And avKoorS > 0 Then
SelArVal = erg(avKoorX, avKoorS)
ElseIf avKoorX > 0 Then
SelArVal = erg(avKoorX)
End If
End If
ex: erg = Empty
End Function
Die ZellFml lautete dann so: =SelArVal(vhs!$ZZ$1000;2;2)
Mit einer Fml wie =vhs!ZZ1000 würde man nur die ZZ erhalten. Damit wäre die GZ ggf sogar etwas sicherer als im Bezug eines verborgenen Namens!
Das alles könnte natürlich auch noch beliebig ausgebaut wdn. Immerhin müsste man schon hierbei mehr Koordinaten kennen als BlattNamen/-Nr und Adresse, um unberechtigten Zugang zur GZ zu erlangen
Morrn, Luc :-?