Registriert seit: 15.04.2014
Version(en): Office 2007
Schade 60 Minuten um zum Nachtragen.
Nach weiteren Recherchen, ginge es nicht eventuell mit:
ActiveSheet.SetFocus ???
mfg
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank,
teste mal.
Code:
Private Sub CmdEingabe_Click()
Dim wksAktivSheet As Worksheet
Dim wksZiel As Worksheet
Dim intErsteLeereZeile As Long
Dim curNetto As Currency
Set wksAktivSheet = ActiveSheet
If Not BlattExists(CboKategorieSteuer.Text) Then Sheets.Add(Type:=xlWorksheet).Name = CboKategorieSteuer.Text
Set wksZiel = Worksheets(CboKategorieSteuer.Text)
intErsteLeereZeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
.Cells(intErsteLeereZeile, 1).Value = CDate(Me.TxtDatum.Value)
.Cells(intErsteLeereZeile, 2).Value = Me.TxtBezeichnung.Value
.Cells(intErsteLeereZeile, 3).Value = Me.CboKategorieSteuer.Value
.Cells(intErsteLeereZeile, 4).Value = CCur(Me.TxtBrutto.Value)
.Cells(intErsteLeereZeile, 5).Value = CDbl(Me.cboSteuersatz.Value)
curNetto = Round(CCur(Me.TxtBrutto.Value) / (1 + CDbl(Me.cboSteuersatz.Value)), 2)
.Cells(intErsteLeereZeile, 6).Value = curNetto
.Cells(intErsteLeereZeile, 7).Value = CCur(Me.TxtBrutto.Value) - curNetto
Worksheets("alleDaten").Range("A1:G1").Copy .Range("A1:G1")
wksAktivSheet.Select
End With
' Unload UserForm1
End Sub
Was meinst Du mit 60 Minuten zum Nachtragen?
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Stefan,
Zitat:Was meinst Du mit 60 Minuten zum Nachtragen?
Frank meint damit bestimmt die Zeit, die zum Bearbeiten eines Beitrags nach dem Einstellen zur Verfügung bleibt.
@Frank
Das Zeitlimit ist meines Wissens nach in den meisten Foren. Es soll damit verhindert werden, dass noch nach Tagen die Ausgangsfrage eventuell so verändert werden kann, dass die bereits gegebenen Antworten keinen Sinn mehr machen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 15.04.2014
Version(en): Office 2007
(22.06.2014, 15:46)Steffl schrieb: ...60 Minuten...
Hallo Stefan, die 60 Minuten zum editieren, also nachbessern des Beitrags waren schon vorüber. (zeitliche Begrenzung, finde ich a bissel kurz >persönliche Meinung<)
Danke für deine Bemühung
Habe den Code ausgetauscht und probiert, der Focus ist nach betätigen des Eingabe Button auf dem neu angelegtem Blatt.
Ich wollte aber im Tabellenblatt "AlleDaten" verbleiben
Edit: Hallo Günter
eine zeitliche Begrenzung könnte ja gegen Mitternacht bestehen :21:, nur der da gegen 24:00 bzw. 0:00 Uhr
postet, hat da dann die schlechteren Karten :19:
Edit end
mfg
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank,
in deinem zuletzt geposteten Code hattest Du eine wichtige Codezeile vergessen und ich hatte das Ganze ungetestet wieder gepostet und dabei deinen Fehler nicht bemerkt. Nachdem ich nun die fehlende Codezeile berücksichtigt habe, konnte ich nicht mehr feststellen, das das Blatt gewechselt wird.
Code:
Private Sub CmdEingabe_Click()
Dim wksAktivSheet As Worksheet
Dim wksZiel As Worksheet
Dim intErsteLeereZeile As Long
Dim curNetto As Currency
Set wksAktivSheet = ActiveSheet
If Not BlattExists(CboKategorieSteuer.Text) Then Sheets.Add(Type:=xlWorksheet).Name = CboKategorieSteuer.Text
Set wksZiel = Worksheets(CboKategorieSteuer.Text)
With wksZiel
intErsteLeereZeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
.Cells(intErsteLeereZeile, 1).Value = CDate(Me.TxtDatum.Value)
.Cells(intErsteLeereZeile, 2).Value = Me.TxtBezeichnung.Value
.Cells(intErsteLeereZeile, 3).Value = Me.CboKategorieSteuer.Value
.Cells(intErsteLeereZeile, 4).Value = CCur(Me.TxtBrutto.Value)
.Cells(intErsteLeereZeile, 5).Value = CDbl(Me.cboSteuersatz.Value)
curNetto = Round(CCur(Me.TxtBrutto.Value) / (1 + CDbl(Me.cboSteuersatz.Value)), 2)
.Cells(intErsteLeereZeile, 6).Value = curNetto
.Cells(intErsteLeereZeile, 7).Value = CCur(Me.TxtBrutto.Value) - curNetto
Worksheets("alleDaten").Range("A1:G1").Copy .Range("A1:G1")
wksAktivSheet.Select
End With
' Unload UserForm1
End Sub
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
22.06.2014, 16:31
(Dieser Beitrag wurde zuletzt bearbeitet: 24.06.2014, 18:52 von schauan.)
Hallo Stefan, habe den Code gerade gesehen, werde ihn nun einbinden und testen. Rückmeldung kommt gleich
Danke für die Hilfe
Edit:
Es funktioniert nicht - hier die Fehlermeldung
Nicht funktionierender Bildlink entfernt.
Ein Administrator.
mfg
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank,
ich kann dein Image leider nicht sehen
Aber ich hatte den Code in meiner letzten Antwort nochmals korregiert hier eingestellt.
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank,
das hatte ich aber mal geschrieben :(
(18.06.2014, 16:39)Steffl schrieb: Bitte füge die Funktion auch mit ein.
Code:
Function BlattExists(BlattName As String) As Boolean
On Error Resume Next
BlattExists = Not ThisWorkbook.Worksheets(BlattName) Is Nothing
On Error GoTo 0
End Function
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
(22.06.2014, 17:05)Steffl schrieb: ...Bitte füge die Funktion auch mit ein....
Hallo Stefan, deine Bemühungen waren von vornherein richtig. Nun ich Dep habe ins falsche UF kopiert. Es ist alles tadellos am laufen. Vielen lieben Dank an Dich
mfg