in einem Klassenmodul habe ich 30 Case Anweisungen welche 70 CommandButton
steuern.
Bis gestern funktionierte alles einwandfrei.
Heute jedoch kam die Meldung "Prozedur zu groß"
Gibt es eine Einschränkung für Case- Anweisungen?
Danke!
Gruß, Ludmila
Private Sub UserForm_Initialize()
lc = -1
For Each cnt In Me.Controls
If TypeOf cnt Is MSForms.CommandButton Then
lc = lc + 1
ReDim Preserve arrCmd(lc)
Set arrCmd(lc) = New clsCommandButton
arrCmd(lc).initCommand cnt
End If
Next
End Sub
Public Function initCommand(btn As MSForms.CommandButton) As Object
Set initCommand = Nothing
Set myCom = btn
Set initCommand = Me
End Function
Private Sub myCom_Click()
Dim A As Variant, dZeit As Date, vA As Variant, dH As Double
Set wkb = Workbooks(sD): Set wksD = wkb.Worksheets("Data"): Set wksB = wkb.Worksheets("BT") _
: Set wksH = wkb.Worksheets("Help")
With uf
Select Case myCom.Tag
Case "cmdS3"
Hier kommen die verschiedenen Codes gesamt ca. 2000 Zeilen
case ....... bis cmdS30
end select
end with
Set wkb = Nothing: Set wksD = Nothing: Set wksB = Nothing
End Sub
Select Case myCom.Tag
Case "cmdS3"
'… bis Case "cmdS15"
Case Else: Call myCom_Part2(uf, myCom.Tag)
End Select
Private Sub myCom_Part2(uf As Object, myComTag$, …was_sonst_noch_benötigt_wird)
With uf
Select Case myComTag
Case "cmdS16"
'… bis Case "cmdS30"
End Select
End With 'usw
Morrn, Luc :-?