Code-Verbesserung
10.03.2016 14:39:25
Locean
ich bin nun nach langem, gerade auch durch eure Hilfe, mit meinem Projekt fertig, zumindest wenn man überhaupt mit einem solchen Projekt (Personaleinsatzplanung) fertig werden kann. Denn bei mir tun sich wieder neue Ideen auf. Ich würde aber gerne meine Projekt-Codes um einiges verkürzen, da ich mir sicher bin, ich habe nicht für alles die ultimative und kürzeste Lösung. Teilweise braucht Excel halt doch recht lange um gewisse Codes zu durchlaufen.
Hier bitte ich euch wieder einmal um Unterstützung und falls ich es damit zu weit treiben sollte, kann ich das verstehen, sagt es dann bitte einfach, aber ich finde keine einfacheren Lösungen mehr im Netz. Es geht hier also rein um das Verkürzen von Code-Bausteinen.
Vielen Dank schonmal im Voraus.
Hier mal der erste Code:
Sub MA1()
Application.ScreenUpdating = False
If Sheets("Arbeitszeitnachweis").ComboBox2.Value = Sheets("Arbeitszeitnachweis").Range("A23") _
_
Then
Sheets("AZN-AVR").Activate
Sheets("AZN-AVR").visible = True
If Sheets("Arbeitszeitnachweis").ComboBox1.Value = Sheets("Arbeitszeitnachweis").Range("A2") _
Then
Sheets("Dienstplan").Range("C5:G35").Copy
Sheets("AZN-AVR").Range("C10:G40").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("H5:H35").Copy
Sheets("AZN-AVR").Range("H10:H40").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
_
_
False, Transpose:=False
Sheets("Arbeitszeitnachweis").Range("B22").Copy
Sheets("AZN-AVR").Range("B3:B3").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("A2:A2").Copy
Sheets("AZN-AVR").Range("D5:D5").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("A3:A3").Copy
Sheets("AZN-AVR").Range("G5:G5").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("A5:A5").Copy
Sheets("AZN-AVR").Range("A10:A10").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("I3:I3").Copy
Sheets("AZN-AVR").Range("I8:I8").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("K5:K35").Copy
Sheets("AZN-AVR").Range("P10:P40").PasteSpecial Paste:=xlValue
Sheets("Dienstplan").Range("L5:L35").Copy
Sheets("AZN-AVR").Range("Q10:Q40").PasteSpecial Paste:=xlValue
Sheets("Arbeitszeitnachweis").visible = False
End If
End If
If Sheets("Arbeitszeitnachweis").ComboBox2.Value = Sheets("Arbeitszeitnachweis").Range("A24") _
_
Then
Sheets("AZN-AVR
Hier sollen die Daten aus Dienstplan in einen Arbeitszeitnachweis übernommen werden. Da aber zwischendurch Spalten gesperrt bleiben müssen, kann ich nicht einen kompletten Bereich direkt übernehmen.Ich freue mich schon auf Lösungen, wenn machbar.
Vielen Dank
Gruß Locean