Hallo zusammen,
folgende Erläuterung zu meiner aktuellen Situation:
ich erstelle für die Arbeit gerade eine Excel Tabelle mit der man Gebäudegutachten relativ selbstständig bearbeiten kann
dass heisst, das Dinge wie Gebäudetyp oder Schadensarten über eine UserForm eingetragen werden können. Nun habe MultiPages
erstellt mit 2 Pages und ich möchte auch noch MultiPages mit 3 Pages erstellen. Jede Page soll für einen anderen Werkstoff
stehen, indem verschieden Schadensarten aufgeführt sind die nachher mit einer Formel zu einem bestimmten Zustand ermittelt werden
(gut, mittel oder schlecht). Es sind also TextBoxes vorhanden in die Prozentwerte eingetragen werden und diese werden in eine
Tabelle übertragen. So viel zu meiner Idee.
Meine Frage ist letztendlich, wie kann ich eine oder zwei andere Pages automatisch
"sperren"
wenn ich bei der einen Page
Werte eingetragen habe und diese über einen CommandButton
"Übernehmen"
in die Tabelle eintragen will, ohne das in allen
3 Pages unterschiedliche Zahlenwerte eingetragen werden können. Die anderen Pages sollen sichtbar bleiben. Ich habe einen Button eingefügt,
der die Zellen in der Tabelle bei Excel und die TextBoxes der Userform automatisch leert wenn dieser betätigt wird. Erst dann
sollte es wieder möglich sein eine andere Page anzuklicken und diese auszufüllen.
Ich hoffe, ich habe alles einigermaßen verständlich erklärt und ihr könnt mir bei meinem Problem helfen, gerne nehme ich auch
allgemeine Verbesserungsvorschläge zu meinem angefügten Code entgegen ;)
Option
Explicit
Private
Sub
CommandButton1_Click()
Application.ScreenUpdating =
False
Cells(17, 9).Value = TextBox1.Value
Cells(17, 8).Value = TextBox2.Value
Cells(17, 7).Value = TextBox3.Value
Cells(17, 6).Value = TextBox4.Value
Cells(17, 5).Value = TextBox5.Value
End
Sub
Private
Sub
CommandButton2_Click()
Unload Tragende_AW
End
Sub
Private
Sub
CommandButton3_Click()
ActiveSheet.Range(
"E17:I17"
).ClearContents
Dim
objControl
As
Control
For
Each
objControl
In
Controls
Select
Case
TypeName(objControl)
Case
"TextBox"
objControl.Text =
""
End
Select
Next
End
Sub
Private
Sub
UserForm_Initialize()
TextBox1.Value = Cells(17, 9).Value
TextBox2.Value = Cells(17, 8).Value
TextBox3.Value = Cells(17, 7).Value
TextBox4.Value = Cells(17, 6).Value
TextBox5.Value = Cells(17, 5).Value
End
Sub