Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Code-Verkürzung

Code-Verkürzung
19.09.2021 13:04:47
Guesa
Hallo Forum
Da ab und an in der Datei Formeln zerschossen werden habe ich folgenden Code jetzt eingebaut. Funktioniert auch alles. Frage: Kann man das ganze auch kürzen, wenn ja wie. Schon mal Danke für Eure Hilfe
Gruß, Guesa

Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Intersect(Target, Range("B4:B1300")) Is Nothing) Then
Application.ScreenUpdating = False
'Formel für Spalte C Zuordnung Standort/Abteilung
Worksheets("Sicherung Formeln").Cells(4, 3).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 3).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte Y Berechnung 1/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 25).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 25).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte Z Berechnung 2/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 26).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 26).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AA Berechnung 3/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 27).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 27).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AB Berechnung 4/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 28).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 28).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AC Berechnung 5/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 29).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 29).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AD Berechnung 6/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 30).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 30).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AE Berechnung 7/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 31).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 31).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AF Berechnung 8/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 32).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 32).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.EnableEvents = False
'Formel für Spalte AG Berechnung 9/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 33).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 33).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AH Berechnung 10/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 34).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 34).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Formel für Spalte AI Berechnung 10/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, 35).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 35).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.EnableEvents = False 'Steuerung aus
Worksheets("Daten").Cells(ActiveCell.Row, 3).Activate 'zurück nach Spalte C
Application.EnableEvents = True 'Steuerung wieder an
End If
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code-Verkürzung
19.09.2021 14:03:28
ReginaR
Hi,
ungetestet:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lng_spalte As Long
If Not (Intersect(Target, Range("B4:B1300")) Is Nothing) Then
Application.ScreenUpdating = False
'Formel für Spalte C Zuordnung Standort/Abteilung
Worksheets("Sicherung Formeln").Cells(4, 3).Copy
Worksheets("Daten").Cells(ActiveCell.Row, 3).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
For lng_spalte = 25 To 26
'Formel für Spalte Y / Z Berechnung 1/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, lng_spalte).Copy
Worksheets("Daten").Cells(ActiveCell.Row, lng_spalte).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next
For lng_spalte = 27 To 35
'Formel für Spalte AA bis AI Berechnung 3/ Tage für Meldung
Worksheets("Sicherung Formeln").Cells(4, lng_spalte).Copy
Worksheets("Daten").Cells(ActiveCell.Row, lng_spalte).PasteSpecial Paste:=xlPasteFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next
Application.CutCopyMode = False
Application.EnableEvents = False 'Steuerung aus
Worksheets("Daten").Cells(ActiveCell.Row, 3).Activate 'zurück nach Spalte C
Application.EnableEvents = True 'Steuerung wieder an
End If
End Sub
Gruß Regina
Anzeige
AW: Code-Verkürzung
19.09.2021 14:31:53
Guesa
Hallo Regina
Danke für die schnelle Rückmeldung. Leider bricht Excel ab und verabschiedet sich dann. Ich werde mir das noch in Ruhe angucken vielleicht finde ich ja woran es liegt.
Aber da habe ich schon mal einen Ansatz wie ich das umsetzen könnte.
Gruß, Guesa
AW: Code-Verkürzung
19.09.2021 15:35:08
Guesa
Hallo Regina
Nochmals Danke Klappt wunderbar. War mein Fehler, aber ich schreib nicht was, sonst lachst du mich aus :-)
Bin halt kein Profi, und brauche etwas länger
Gruß, Guesa
AW: Code-Verkürzung
19.09.2021 15:40:46
ReginaR
Hi,
so lange man seine Fehler noch selbts findet, ist man schon ganz vorne mit dabei :))))
Danke für die Rückmeldung!
Gruß Regina
Anzeige
AW: Code-Verkürzung
19.09.2021 14:07:59
GerdL
Hallo Guesa, nur gekürzt.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Intersect(Target, Range("B4:B1300")) Is Nothing) Then
With Worksheets("Sicherung Formeln")
'Formel für Spalte AE Berechnung 7/ Tage für Meldung
.Cells(4, 3).Copy
Cells(ActiveCell.Row, 3).PasteSpecial Paste:=xlPasteFormulas
Application.CutCopyMode = False
'Formel für Spalte Y Berechnung 1/ Tage für Meldung
'Formel für Spalte Z Berechnung 2/ Tage für Meldung
'Formel für Spalte AA Berechnung 3/ Tage für Meldung
'Formel für Spalte AB Berechnung 4/ Tage für Meldung
'Formel für Spalte AC Berechnung 5/ Tage für Meldung
'Formel für Spalte AD Berechnung 6/ Tage für Meldung
'Formel für Spalte AE Berechnung 7/ Tage für Meldung
'Formel für Spalte AF Berechnung 8/ Tage für Meldung
'Formel für Spalte AG Berechnung 9/ Tage für Meldung
'Formel für Spalte AH Berechnung 10/ Tage für Meldung
'Formel für Spalte AI Berechnung 10/ Tage für Meldung
.Range(.Cells(4, 25), .Cells(35, 4)).Copy
Cells(ActiveCell.Row, 25).PasteSpecial Paste:=xlPasteFormulas
Application.CutCopyMode = False
End With
Application.EnableEvents = False 'Steuerung aus
Cells(ActiveCell.Row, 3).Activate 'zurück nach Spalte C
Application.EnableEvents = True 'Steuerung wieder an
End If
End Sub
Gruß Gerd
Anzeige
AW: Code-Verkürzung
19.09.2021 14:38:39
Guesa
Hallo Gerd
Auch Dir ein Danke für die Rückmeldung. In Spalte C wird die Formel eingetragen, der Rest nicht. Aber wie gesagt ich schau mal in Ruhe, aber ein Ansatz wie es gehen könnte.
Gruß, Guesa
AW: Code-Verkürzung
19.09.2021 14:41:55
ralf_b
vielleicht geht dies ja

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
If Not (Intersect(Target, Range("B4:B1300")) Is Nothing) Then
Application.ScreenUpdating = False
Application.EnableEvents = False          'Steuerung aus
lRow = Target.Row
With Worksheets("Daten")
'Formel für Spalte C Zuordnung Standort/Abteilung
.Cells(4, 3).Formula = Worksheets("Sicherung Formeln").Cells(lRow, 3).Formula
.Cells(4, 25).Resize(, 10).Formula = Worksheets("Sicherung Formeln").Cells(lRow, 25).Resize(, 10).Formula
End With
End If
Application.EnableEvents = True       'Steuerung wieder an
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Code-Verkürzung
19.09.2021 16:22:11
Guesa
Hallo Ralf
Danke für Deine Rückmeldung
Funktioniert nur in Zeile 4, Spalte C, wird Zeile 5 befüllt zeigt die Formel in Zeile 4, Spalte C nichts mehr, das gleiche gilt für den Rest der Zeile.
Nehme den Code von Regina
Gruß, Guesa

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige