Hallo zusammen,
ich habe folgenden Code erstellt, der auch einwandfrei funktioniert. Anhand einer UserForm kann der Anwender 3 Textboxen befüllen. Die Werte der Textboxen werden dann anschließend in Kopf- bzw. Fußzeile geschrieben.
Jetzt bräuchte ich eine Erweiterung meines Codes, da sich bei der Anwendung noch ein paar Ungereimtheiten aufgetan haben.
Wenn eine der 3 Textboxen ohne Wert ist (also wenn der Anwender nichts eingegeben hat) dann wird beim Drücken auf „OK“ der bereits vorhandene Wert wieder gelöscht.
Also in der Praxis: Der Anwender hat alle seine 3 Felder ausgefüllt und bestätigt, so dass sich Kopf- und Fußzeile füllen. Nun merkt er, dass er sich im ersten Feld verschrieben hat und möchte nun nur noch diesen einen Wert ändern. Schreibt er nun in die anderen beiden nichts, wird das zuvor geschrieben in Kopf- bzw. Fußzeile mit „Nichts“ überschrieben.
Sprich, wenn eines der Felder leer ist, soll nichts in Kopf- oder Fußzeile passieren. So werden bereits vermerkte Texte nicht wieder gelöscht.
Wie muss ich hier meinen Code anpassen?
Danke & Grüße
Steffi
Private Sub cmbOK_Click()
Dim x As String
Dim y As String
Dim z As String
x = TextBox1.Value
y = TextBox2.Value
z = TextBox3.Value
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.CenterHeader = "&""Calibri,Fett""&16Funktionskosten " & x
.LeftFooter = "&""Calibri,Fett""&9Erstelldatum: " & y & Chr(10) & "&9Bearbeiter/Abteilung: " & z
End With
Application.PrintCommunication = True
Unload usf_Befüllen
End Sub
|