Ich beziehe eine Tabelle mit Datenbankwerten. Die Zellen, mit denen ich Daten befülle, möchte, dass sie für die Benutzer schreibgeschützt sind. Wie kann ich das machen?Wie Sie Zellen in Tabellen schreibgeschützt machen?
Antwort
Abhängig davon, wie Sie den Bereich auswählen möchten. Dies ist nur eine Zelle. Wenn Sie zu J1 zurückkehren und den Wert ändern, sollten Sie dazu aufgefordert werden.
Private Sub Worksheet_Change(ByVal Target As Range)
Range("J1").Select
Selection.Locked = True
ActiveSheet.Protect Contents:=True
Range("K1").Select
End Sub
Zellen werden erst gesperrt, wenn das Arbeitsblatt geschützt ist. Standardmäßig sind alle Zellen auf "Gesperrt" eingestellt. Daher müssen Sie Zellen entsperren, die von den Benutzern geändert werden können.
This page bietet ein kleines Sub zum Schutz einer Reihe von Zellen.
Auszug
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("H1:H10")) Is Nothing Then
Target.Offset(0, 1).Select
MsgBox "you may not enter that cell"
End If
End Sub
H1:H10
zu schützen. Wenn der Benutzer eine Zelle innerhalb von H1:H10
ändern möchte, wird in einer Warnmeldung angegeben, dass die Zelle nicht geändert werden darf und stattdessen die Nachbarzelle in der nächsten Spalte (I
) ausgewählt wird.
Ziemlich sicher, dass dies keine richtige Antwort ist – titus
In Excel können Sie zum Menü Schutz gehen und angeben, für welche Zellen ein Passwort geändert werden muss. Sie können auch mehrere Bereiche angeben.
Ich hoffe, das ist, was Sie gesucht haben.
Sie können versuchen, Zellen zu schützen. Oder Sie können es selbst mit einem SelectionChange-Handle-Ereignis codieren ...:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Selection, Range("A24:A50")) Is Nothing Then
Range("B1").Select
End If
End Sub
Unter diesen Umständen finde ich oft den besten Weg, das Blatt zu sperren, aber nur für den Benutzer mit dem UserInterfaceOnly
Argument, das immer noch uneingeschränkte programmatische Interaktion mit dem Blatt erlaubt.
ActiveSheet.ProtectUser InterfaceOnly:=True
Es gibt verschiedene andere Argumente, die eingestellt werden kann, dass der Benutzer immer noch erlaubt, zu filtern, sortieren usw. sollte dies erforderlich sein, hat die Hilfedatei eine vollständige Liste.
- 1. "Leere" Zellen in HTML-Tabellen klickbar machen
- 2. Machen Sie eine einzige Tabelle in mysql schreibgeschützt
- 3. SVN-Verzeichnis lokal schreibgeschützt machen
- 4. Ein Django-Modell schreibgeschützt machen?
- 5. machen QTableView Spalte schreibgeschützt Python
- 6. Ein ContentEditable-Div schreibgeschützt machen?
- 7. Machen Sie eine iPhone-Eigenschaft schreibgeschützt in iOS-Ziel-c
- 8. Machen Sie alle Steuerelemente in einem Formular auf einmal schreibgeschützt
- 9. Merging Zellen in LaTeX Tabellen
- 10. WPF Datagrid: Machen Sie Zellen nur lesbar
- 11. Selbst Sizing Zellen machen UITableView
- 12. Finden Sie zwei identische Zellen in Google Tabellen
- 13. Wie machen Sie eine Vereinigung von zwei Tabellen in NHibernate?
- 14. Zellen in Org-Modus-Tabellen zusammenführen
- 15. machen Word-Dokument in einer Webseite eingebettet editierbar oder schreibgeschützt
- 16. Löschen von Zellen in Tabellen, html
- 17. Machen Sie einen Bereich von Zellen gleich einem anderen Bereich von Zellen in verschiedenen Arbeitsmappen
- 18. Anwenden von Formeln auf Zellen in separaten Google Tabellen
- 19. Öffnen Sie die Datei schreibgeschützt
- 20. Kann ich ein tastypie modelresource-Feld schreibgeschützt machen?
- 21. PowerPoint 2007-Tabellen: Identifizieren zusammengeführter Zellen
- 22. Ermitteln der Breite von Tabellen oder Zellen
- 23. Machen Sie Ausgangszellen wie Markdown
- 24. Wie man Zellen in Excel einfärbt
- 25. machen Tabellen Von Hierarchische Listen in CSS
- 26. Remove cell Bearbeitungsstil in schreibgeschützt Silverlight DataGrids
- 27. iPhone: Verstecke leere Tabellen Zellen in einer einfachen View-Tabelle
- 28. Wie machen Sie eine Datei in VB beschreibbar?
- 29. Loops Vermeiden von Zellen in verschiedenen Tabellen in Einstellen
- 30. Swagger: Ist es möglich, einen Operationsparameter konstant/schreibgeschützt zu machen?
Wenn ich diese Arbeit für eine Reihe von Zellen machen will, Wie kann ich das tun.Pardon mein Mangel an Wissen, ich bin neu in der Programmierung. – gizgok
Bereich ("A1: K47") – JeffO
Dies macht alle Zellen nur lesbar..am mache ich einen Fehler. Private Sub Worksheet_Change (Cellrange As String) Range (Cellrange) .Select Selection.Locked = True ActiveSheet.Protect Inhalt: = True End Sub – gizgok