AW: Prozedur zu Groß
19.07.2016 14:36:38
Daniel
Hi
entweder mit Parameterübergabe:
Sub HauptMakro
Dim i as Long
For i = 11 to Cells(Rows.Count, "D").End(xlUp).Row
Call MakroX(i)
Next
End Sub
Sub MakroX(i)
Cells(i, 1).Value = "Hallo Welt"
End Sub
oder du verwendest projektweit gültige Variablen, das sind Variablen die von allen Makros verwendet werden können.
Projektweit gültige Variablen dürfen dann in den einzelnen Makros nicht nochmal deklariert werden, sonst entstehen neue eigenständige Variablen in den Prozeduren, die nicht mit der projektweit gültigen zu tun haben.
allgemeine Variablen wie Schleifenzähler i usw als Projektweit zu deklarieren birgt ein gewisses Risiko, die Übersicht zu verlieren.
Option Explicit
Public i as Long
Sub HauptMakro
For i = 11 to Cells(Rows.Count, "D").End(xlUp).Row
Call MakroX
Next
End Sub
Sub MakroX
Cells(i, 1).Value = "Hallo Welt"
End Sub
die Meldung "Prozedur zu gross" ist eher ungewöhnlich.
wenn du nicht ein wirklich aufwendiges Projekt hast, lässt das eher auf eine ungeschickte Programmierweise vermuten.
Gruß Daniel