Anzeige
Archiv - Navigation
1768to1772
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nachträgliche Korrektur

Nachträgliche Korrektur
06.07.2020 11:07:03
ErikSnase
Hallo
ich habe folgende Frage und am Ende befindet sich eine Beispieldatei:
Ich hab ein UserForm wo man zuerst zwischen 3 verschiedenen Flächenarten auswählen muss. Je nach dem für welche Flächenart man sich entscheidet, erscheinen Eingabefelder.
In diese muss man dann Maße eingeben. Durch ein "Eingabe"- Button werden diese Einträge dann in die Excel- Tabelle übernommen. In den Zellen, der Flächen die man nicht ausgewählt hat, werden Nullen eintragen.
Für jede Fläche habe ich einen eigenen "Eingabe"- Button. Dies kann man bestimmt auch optimieren, aber so wie es jetzt ist, reicht es erstmal :D
Jetzt zu meiner Frage:
Wie kriegt man das programmiert, dass wenn man eine Eingabe getätigt hat, sprich auf den Eingabe- Button geklickt hat und die Einträge übernommen werden, dass man den Eintrag durch ein "Korrigier"- Button anzeigen lässt und dann die Möglichkeit besteht, diesen zu korrigieren? Hierbei reicht es vollkommen aus, wenn man nur den Eintrag davor korrigieren kann.
Hier die Beispieldatei:
https://www.herber.de/bbs/user/138794.xlsm
Vielen Dank !
Gruß Erik

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nachträgliche Korrektur
06.07.2020 12:49:36
Herbert_Grom
Hallo Erik,
das geht schon. Lies halt die Zellinhalte wieder ein und korrigiere sie bei dieser Gelegenheit.
Servus
AW: Nachträgliche Korrektur
06.07.2020 13:18:51
ChrisL
Hi Erik
Commandbutton1 = Eingabe
Commandbutton4 = Korrektur
Button 2-3 löschen
Commandbutton4 ist ausgeblendet (wird nach der ersten Eingabe eingeblendet).
Private Sub ComboBox1_Change()
Label1.Visible = False
Label2.Visible = False
Label2.Visible = False
Label3.Visible = False
TextBox1.Visible = False
TextBox5.Visible = False
TextBox2.Visible = False
TextBox3.Visible = False
TextBox4.Visible = False
TextBox1.Value = ""
TextBox5.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""
If ComboBox1.Value = "Rechteck" Then
Label1.Visible = True
TextBox1.Visible = True
TextBox5.Visible = True
ElseIf ComboBox1.Value = "Mantelfläche" Then
Label2.Visible = True
TextBox2.Visible = True
TextBox3.Visible = True
ElseIf ComboBox1.Value = "Kreis" Then
Label3.Visible = True
TextBox4.Visible = True
End If
End Sub

Sub Uebertrag(bKorrektur As Boolean)
Dim lZ As Long
With Worksheets("Tabelle1")
If ComboBox1 = "" Then
MsgBox "keine Auswahl"
Exit Sub
End If
lZ = .Cells(Rows.Count, 8).End(xlUp).Row
If Not bKorrektur Then
lZ = lZ + 1
If lZ > .Cells(Rows.Count, 3).End(xlUp).Row Then
MsgBox "kein Platz mehr"
Exit Sub
End If
End If
.Range(.Cells(lZ, 4), .Cells(lZ, 8)) = 0
Select Case ComboBox1
Case "Rechteck"
If Me.TextBox1  "" And Me.TextBox5 = "" Then
MsgBox "Textbox 5 leer"
Exit Sub
End If
.Cells(lZ, 4) = Me.TextBox1
.Cells(lZ, 5) = Me.TextBox5
Case "Mantelfläche"
.Cells(lZ, 6) = Me.TextBox2
.Cells(lZ, 7) = Me.TextBox3
Case "Kreis"
.Cells(lZ, 8) = Me.TextBox4
End Select
TextBox1.Value = ""
TextBox5.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""
CommandButton4.Visible = True
End With
End Sub

Private Sub CommandButton1_Click()
' Neueingabe
Call Uebertrag(0)
End Sub

Private Sub CommandButton4_Click()
' Korrektur
Call Uebertrag(1)
End Sub

Private Sub UserForm_Initialize()
UserForm1.ComboBox1.RowSource = "Tabelle1!O13:O15"
ComboBox1.Style = fmStyleDropDownList
End Sub

cu
Chris
Anzeige
AW: Nachträgliche Korrektur
06.07.2020 13:25:22
ErikSnase
Danke für die Hilfe Chris,
ich werde es heute leider nicht mehr schaffen das auzuprobieren, aber ich denke das funktioniert so. Ansonsten würde ich mich nochmal melden.
Danke dir!!
AW: Nachträgliche Korrektur
07.07.2020 09:05:37
ErikSnase
Hey Chris, ich hab mir das jetzt mal angeguckt und bedanke mich schonmal für die Arbeit. Aber kriegt man das noch irgendwie so hin, dass der letzte eingetragene zuerst nochmal angezeigt wird um zu sehen, was man eingetragen hat bevor man direkt korrigiert?
AW: Nachträgliche Korrektur
07.07.2020 10:47:46
fcs
Hallo Erik,
Chris hatte den Code im Userform ja schon aufgeräumt.
https://www.herber.de/bbs/user/138821.xlsm
Ich hab jetzt noch deinen Wunsch eingebaut bzgl. Korrekturfunktion.
Die Schaltfläche wird eingeblendet sobald Werte eingetragen werden.
Wenn Korrigieren gewählt wird, dann werden die Werte wieder geladen und die Beschrifftung des Eingabe-Buttons wechselt in "Korrigieren", der korrigieren-Button wird wieder ausgeblendet.
Um die Abfolge korrekt zu gewährleisten wird die Tag-Eigenschaft des Commandbutton1 entsprechend gesetzt.
Zusätzlich hab ich noch folgendes angepasst:
  • Prüfung ob Eingabe in Textboxen für das jeweilige Element vollständig

  • Zahlen als Eingabe in Textboxen sind normalerweise Text (sieht man in der Tabelle ggf. an dem grüne Hinweismarker oder daran, dass die Zahlen Links in den Zellen stehen.
    Ich hab eine Prozedur eingebaut, mit der der Textbox-Inhalt umgewandelt wird.

  • Wenn in der Combobox ein Eintrag gwewählt wird, dann wird der Fokus auf die entsprechende Eingabe-Textbox gesetzt.

  • Die Eigenschaft TabIndex der Steuerelement wurde geändert, so das die Textboxen in der logischen Reihenfolge angesteuert werden, wenn die TAB- oder ENTER-Taste gedrückt wird.

  • Herzliceh Grüße
    Franz
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige