AW: eigene datenmaske
16.02.2024 17:23:19
Yal
Hallo Willi,
das Flakern kommt von den "Select". Diese erscheinen nur, weil Du den Makrorekorder verwendet hast (sehr gut), und jedesmal eine Zelle ausgewählt, bevor etwas gemacht wurde. Wenn aber VBA die Sache erledigt, kann die Aktion direkt auf der Zielzelle gemacht werden, ohne diese zu selektieren.
Es sieht dann so aus. Ich hoffe, Du erkennst deinen Code:
Sub SpeichernEinnahmen()
Dim wsQ As Worksheet ' Q wie Quelle
Application.ScreenUpdating = False
Application.EnableEvents = False
Set wsQ = Worksheets("Einnahmen")
With Worksheets("Datenbank").Cells(Rows.Count, "A").End(xlUp).Offset(1).EntireRow
'A1, B1, usw. sind relative Adressierung eine einzelne Zeile (EntireRow)
.Range("A1").Value = wsQ.Range("E7").Value 'Konto
.Range("B1").Value = wsQ.Range("E5").Value 'Datum
.Range("C1").Value = wsQ.Range("E9").Value 'Buchungstext
.Range("D1").Value = wsQ.Range("E11").Value 'Kategorie
.Range("E1").Value = wsQ.Range("E15").Value 'Info
.Range("F1").Value = wsQ.Range("E13").Value 'Betrag
.Range("G1").Value = "Einnahme" 'aeu
.Range("I1").Value = wsQ.Range("E17").Value 'steuerrelevant
End With
wsQ.Range("E5, E7, E9, E11, E13, E15").ClearContents
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
VG
Yal