Hallo zusammen,
auf einem Tabellenblatt tragen unterschiedliche Kollegen Daten ein. Damit sie mir die Formeln nicht ständig „kaputtmachen“, habe ich diese drei Spalten geschützt.
Leider lässt sich jetzt der Filter nicht mehr nutzen. Ist das zwingend oder lässt sich da was dran drehen?
Liebe Grüße
Jorge
Hallo Jorge
Damit sie mir die Formeln nicht ständig „kaputtmachen“,
habe ich diese drei Spalten geschützt.
Um die Formeln besser zu schützen, könntest du sie jeweils mit einem Makro eintragen, z.B. bei „Datei/öffnen“. Auch das ist natürlich kein Schutz gegen böswillige Angriffe, aber meist sind die Kaputtmacher nur leichtsinnige Laien.
Generell ist es so, dass Makros das Blatt vor ungewollten Eingriffen besser schützen als Formeln.
Mache dir dazu deine eignen Gedanken!
Erich
Hallo Erich,
wäre es sehr kompliziert, mir deine Idee etwas ausführlicher zu beschreiben?
Gruß
Jorge
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Um die Formeln besser zu schützen, könntest du sie jeweils mit
einem Makro eintragen, z.B. bei „Datei/öffnen“. Auch das ist
wäre es sehr kompliziert, mir deine Idee etwas ausführlicher
zu beschreiben?
Hi Jorge,
ein Ansatz: Öffne eine neue leere Datei zum Testen, Alt+F11, Doppelklick auf „DieseArbeitsmappe“, diort den Code einfügen.
Nun ist Spalte G „geschützt“, egal was gelöscht wird, nach Schließen und erneutem Öffnen sind die Formeln in G2:G100 wieder da.
Option Explicit
Private Sub Workbook\_Open()
Dim Zei As Long
Application.EnableEvents = False
Application.ScreenUpdating = False
For Zei = 2 To 100
Range("G" & Zei).FormulaLocal = "=Summe(A" & Zei & ":F" & Zei & ")"
Next Zei
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Gruß
Reinhard
Hi Jorge,
ein Ansatz: Öffne eine neue leere Datei zum Testen, Alt+F11,
Doppelklick auf „DieseArbeitsmappe“, diort den Code einfügen.
Nun ist Spalte G „geschützt“, egal was gelöscht wird, nach
Schließen und erneutem Öffnen sind die Formeln in G2:G100
wieder da.
Option Explicit
Private Sub Workbook_Open()
Dim Zei As Long
Application.EnableEvents = False
Application.ScreenUpdating = False
For Zei = 2 To 100
Range(„G“ & Zei).FormulaLocal = „=Summe(A“ & Zei & „:F“ &
Zei & „)“
Next Zei
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Gruß
Reinhard
Salü Reinhard,
was es alles für Nebenwelten neben unserer und der Scheibenwelt gibt??
Ich habe das alles brav nachgemacht und in der Testmappe hat das alles super geklappt aber ansonsten ist mir das zu hoch.
Es sei denn, du hast ein bisschen Zeit und Muße mir das
Range(„G“ & Zei). auf die Spalten H, M und O oder andere zu erweitern,
wobei jede Spalte eine andere Formel hat, sodass es nur ginge, wenn das
FormulaLocal = „=Summe(A“ & Zei & „:F“ &
Zei & „)“
ersetzt wird durch genau die Formel, die schon drin steht. Zum Beispiel so eine:
=WENN(H986="";HEUTE() -E986;H986 -E986)*24 oder so eine:
=WENN((L982>0)*UND(L9825)*UND(L98210)*UND(L98220)*UND(L98230)*UND(L98240)*UND(L98260)*UND(L982100)*UND(L982150)*UND(L982250)*UND(L982
=WENN((L982>0)*UND(L9825)*UND(L98210)*UND(L98220)*UND(L98230)*UND(L98240)*UND(L98260)*UND(L982100)*UND(L982150)*UND(L982250)*UND(L9825)*1+(L682>10)*1+(L682>20)*1+(L682>30)*1+…)
Rest muß ich mal schauen…
Gruß
Reinhard
Ein ungetesteter Spontanansatz wäre so:
=WENN((L9825)*1+(L682>10)*1+(L682>20)*1+(L682>30)*1+…)
Hi Jorge,
so müßte es auch gehen:
=SVERWEIS(L982;Tabelle2!A1:B12;2;1)
mit folgneder Tabelle in Tabelle2!A1:B12:
-10000 0
0 1
6 2
11 3
21 4
31 5
41 6
61 7
101 8
151 9
251 10
10001 10
Gruß
Reinhard