Vereinfachung meines VBA-Codes
17.10.2016 16:39:16
Cosmopolitan
hallo zunächst einmal!
Ich habe einen VBA-Code, der mir Daten aus einem Tabellenblatt spaltenweise in ein anderes überträgt (und neu anordnet). Leider verbraucht die Ausführung des Codes viel Rechenleistung und Zeit, über Wikibooks hab ich erfahren, dass es Vereinfachungen gibt, z.B. "Worksheets(intCounter) ist schneller als Worksheets("Tabelle1")" oder "For Each wksData In Worksheets:Next ist schneller als Worksheets(intCounter)" etc. (https://de.wikibooks.org/wiki/VBA_in_Excel/_Code-Optimierung)
Ich weiß aber nicht wie ich das in meinen Code einbauen kann ... könnte mir jemand einen Tipp geben?
Hier ist mein Code:
Sub Neues_Working_File_erstellen()
'Erstellt ein neues Working File.
If MsgBox("Neues Working File erstellen?", vbOKCancel, "Sicherheitsabfrage") = vbOK Then
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'Team kopieren:
Sheets("OUTPUT").Columns("AB:AB").Copy
Sheets("WorkingFile").Columns("A:A").PasteSpecial Paste:=xlValues
'Region kopieren:
Sheets("OUTPUT").Columns("T:T").Copy
Sheets("WorkingFile").Columns("B:B").PasteSpecial Paste:=xlValues
'EM LCB kopieren:
Sheets("OUTPUT").Columns("Z:Z").Copy
Sheets("WorkingFile").Columns("C:C").PasteSpecial Paste:=xlValues
'Country of Installation kopieren:
Sheets("OUTPUT").Columns("F:F").Copy
Sheets("WorkingFile").Columns("D:D").PasteSpecial Paste:=xlValues
'EM LCB (CoI) kopieren:
Sheets("OUTPUT").Columns("AA:AA").Copy
Sheets("WorkingFile").Columns("E:E").PasteSpecial Paste:=xlValues
'Opportunity Name kopieren:
Sheets("OUTPUT").Columns("C:C").Copy
Sheets("WorkingFile").Columns("F:F").PasteSpecial Paste:=xlValues
'Industry kopieren:
Sheets("OUTPUT").Columns("AH:AH").Copy
Sheets("WorkingFile").Columns("G:G").PasteSpecial Paste:=xlValues
'PMS kopieren:
Sheets("OUTPUT").Columns("AL:AL").Copy
Sheets("WorkingFile").Columns("H:H").PasteSpecial Paste:=xlValues
'SDA kopieren:
Sheets("OUTPUT").Columns("AJ:AJ").Copy
Sheets("WorkingFile").Columns("I:I").PasteSpecial Paste:=xlValues
'MG/RI kopieren:
Sheets("OUTPUT").Columns("AK:AK").Copy
Sheets("WorkingFile").Columns("J:J").PasteSpecial Paste:=xlValues
'SITIPE Module kopieren:
Sheets("OUTPUT").Columns("BI:BI").Copy
Sheets("WorkingFile").Columns("K:K").PasteSpecial Paste:=xlValues
'Remote Engineering kopieren:
Sheets("OUTPUT").Columns("BJ:BJ").Copy
Sheets("WorkingFile").Columns("L:L").PasteSpecial Paste:=xlValues
'GCBM kopieren:
Sheets("OUTPUT").Columns("AM:AM").Copy
Sheets("WorkingFile").Columns("M:M").PasteSpecial Paste:=xlValues
'GCBM Lead kopieren:
Sheets("OUTPUT").Columns("AO:AO").Copy
Sheets("WorkingFile").Columns("N:N").PasteSpecial Paste:=xlValues
'GCBM Capture Team kopieren:
Sheets("OUTPUT").Columns("AN:AN").Copy
Sheets("WorkingFile").Columns("O:O").PasteSpecial Paste:=xlValues
'Order Intake Booked kopieren:
Sheets("OUTPUT").Columns("AP:AP").Copy
Sheets("WorkingFile").Columns("P:P").PasteSpecial Paste:=xlValues
'IVP LCB 1 kopieren:
Sheets("OUTPUT").Columns("AQ:AQ").Copy
Sheets("WorkingFile").Columns("Q:Q").PasteSpecial Paste:=xlValues
'IVP % 1 kopieren:
Sheets("OUTPUT").Columns("AR:AR").Copy
Sheets("WorkingFile").Columns("R:R").PasteSpecial Paste:=xlValues
'IVP LCB 2 kopieren:
Sheets("OUTPUT").Columns("AS:AS").Copy
Sheets("WorkingFile").Columns("S:S").PasteSpecial Paste:=xlValues
'IVP % 2 kopieren:
Sheets("OUTPUT").Columns("AT:AT").Copy
Sheets("WorkingFile").Columns("T:T").PasteSpecial Paste:=xlValues
'IVP LCB 3 kopieren:
Sheets("OUTPUT").Columns("AU:AU").Copy
Sheets("WorkingFile").Columns("U:U").PasteSpecial Paste:=xlValues
'IVP % 3 kopieren:
Sheets("OUTPUT").Columns("AV:AV").Copy
Sheets("WorkingFile").Columns("V:V").PasteSpecial Paste:=xlValues
'IVP LCB 4 kopieren:
Sheets("OUTPUT").Columns("AW:AW").Copy
Sheets("WorkingFile").Columns("W:W").PasteSpecial Paste:=xlValues
'IVP % 4 kopieren:
Sheets("OUTPUT").Columns("AX:AX").Copy
Sheets("WorkingFile").Columns("X:X").PasteSpecial Paste:=xlValues
'IVP LCB 5 kopieren:
Sheets("OUTPUT").Columns("AY:AY").Copy
Sheets("WorkingFile").Columns("Y:Y").PasteSpecial Paste:=xlValues
'IVP % 5 kopieren:
Sheets("OUTPUT").Columns("AZ:AZ").Copy
Sheets("WorkingFile").Columns("Z:Z").PasteSpecial Paste:=xlValues
'IVP LCB 6 kopieren:
Sheets("OUTPUT").Columns("BA:BA").Copy
Sheets("WorkingFile").Columns("AA:AA").PasteSpecial Paste:=xlValues
'IVP % 6 kopieren:
Sheets("OUTPUT").Columns("BB:BB").Copy
Sheets("WorkingFile").Columns("AB:AB").PasteSpecial Paste:=xlValues
'IVP LCB 7 kopieren:
Sheets("OUTPUT").Columns("BC:BC").Copy
Sheets("WorkingFile").Columns("AC:AC").PasteSpecial Paste:=xlValues
'IVP % 7 kopieren:
Sheets("OUTPUT").Columns("BD:BD").Copy
Sheets("WorkingFile").Columns("AD:AD").PasteSpecial Paste:=xlValues
'IVP LCB 8 kopieren:
Sheets("OUTPUT").Columns("BE:BE").Copy
Sheets("WorkingFile").Columns("AE:AE").PasteSpecial Paste:=xlValues
'IVP % 8 kopieren:
Sheets("OUTPUT").Columns("BF:BF").Copy
Sheets("WorkingFile").Columns("AF:AF").PasteSpecial Paste:=xlValues
'IVP LCB 9 kopieren:
Sheets("OUTPUT").Columns("BG:BG").Copy
Sheets("WorkingFile").Columns("AG:AG").PasteSpecial Paste:=xlValues
'IVP % 9 kopieren:
Sheets("OUTPUT").Columns("BH:BH").Copy
Sheets("WorkingFile").Columns("AH:AH").PasteSpecial Paste:=xlValues
'Customer kopieren:
Sheets("OUTPUT").Columns("D:D").Copy
Sheets("WorkingFile").Columns("AI:AI").PasteSpecial Paste:=xlValues
'End-Customer kopieren:
Sheets("OUTPUT").Columns("E:E").Copy
Sheets("WorkingFile").Columns("AJ:AJ").PasteSpecial Paste:=xlValues
'Sales Phase kopieren:
Sheets("OUTPUT").Columns("L:L").Copy
Sheets("WorkingFile").Columns("AK:AK").PasteSpecial Paste:=xlValues
'Sales Status kopieren:
Sheets("OUTPUT").Columns("M:M").Copy
Sheets("WorkingFile").Columns("AL:AL").PasteSpecial Paste:=xlValues
'Estimated OI Date (PM070) kopieren:
Sheets("OUTPUT").Columns("S:S").Copy
Sheets("WorkingFile").Columns("AM:AM").PasteSpecial Paste:=xlValues
'FY kopieren:
Sheets("OUTPUT").Columns("AC:AC").Copy
Sheets("WorkingFile").Columns("AN:AN").PasteSpecial Paste:=xlValues
'Estimated OI kopieren:
Sheets("OUTPUT").Columns("AF:AF").Copy
Sheets("WorkingFile").Columns("AO:AO").PasteSpecial Paste:=xlValues
'Weighted Est. OI kopieren:
Sheets("OUTPUT").Columns("AG:AG").Copy
Sheets("WorkingFile").Columns("AP:AP").PasteSpecial Paste:=xlValues
'Relevant for Forecast kopieren:
Sheets("OUTPUT").Columns("R:R").Copy
Sheets("WorkingFile").Columns("AQ:AQ").PasteSpecial Paste:=xlValues
'Comment (Sales) kopieren:
Sheets("OUTPUT").Columns("BL:BL").Copy
Sheets("WorkingFile").Columns("AR:AR").PasteSpecial Paste:=xlValues
'Comment (SITIPE) kopieren:
Sheets("OUTPUT").Columns("BM:BM").Copy
Sheets("WorkingFile").Columns("AS:AS").PasteSpecial Paste:=xlValues
'Unique ID kopieren:
Sheets("OUTPUT").Columns("A:A").Copy
Sheets("WorkingFile").Columns("AT:AT").PasteSpecial Paste:=xlValues
'Modified in Philos kopieren:
Sheets("OUTPUT").Columns("H:H").Copy
Sheets("WorkingFile").Columns("AU:AU").PasteSpecial Paste:=xlValues
'Opportunity Owner kopieren:
Sheets("OUTPUT").Columns("I:I").Copy
Sheets("WorkingFile").Columns("AV:AV").PasteSpecial Paste:=xlValues
'Business Segment Text kopieren:
Sheets("OUTPUT").Columns("U:U").Copy
Sheets("WorkingFile").Columns("AW:AW").PasteSpecial Paste:=xlValues
'Chance of Execution % kopieren:
Sheets("OUTPUT").Columns("N:N").Copy
Sheets("WorkingFile").Columns("AX:AX").PasteSpecial Paste:=xlValues
'Chance of Success % kopieren:
Sheets("OUTPUT").Columns("O:O").Copy
Sheets("WorkingFile").Columns("AY:AY").PasteSpecial Paste:=xlValues
'Change Log kopieren:
Sheets("OUTPUT").Columns("BP:BP").Copy
Sheets("WorkingFile").Columns("AZ:AZ").PasteSpecial Paste:=xlValues
'New Project kopieren:
Sheets("OUTPUT").Columns("BN:BN").Copy
Sheets("WorkingFile").Columns("BA:BA").PasteSpecial Paste:=xlValues
'Sheets("Working File").Copy
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Vielen Dank!