Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Tabellenblatt mit Inhalt einer Combobox benennen
#11
Schade 60 Minuten um zum Nachtragen.

Nach weiteren Recherchen, ginge es nicht eventuell mit:
ActiveSheet.SetFocus ???

mfg
Antworten Top
#12
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
Antworten Top
#13
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)
Antworten Top
#14
(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
Antworten Top
#15
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
Antworten Top
#16
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
Antworten Top
#17
Hallo Frank,

ich kann dein Image leider nicht sehen Huh Aber ich hatte den Code in meiner letzten Antwort nochmals korregiert hier eingestellt.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#18
Hallo, hier der Screen

[Bild: fehler_zps0c9885ec.jpg]
Antworten Top
#19
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
Antworten Top
#20
(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
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste