ich möchte gerne einen Sub oder Function in einem anderen Sub aufrufen.
Leider erhalte ich dabei den Laufzeitfehler 1004 - Anwendungs- oder objektdefinierter Fehler.
Hab schon unterschiedliche "Zusammensetztungen" oder Google-Ergebnisse ausprobiert, bin aber leider nicht weiter gekommen.
Hier mein Code:
Sub freie_zeile()
Dim erste_freie_zeile As Long
erste_freie_zeile = [A:Z].Find(What:="*", After:=[A1], LookIn:=xlValues, SearchDirection:= _
xlPrevious).Row + 1
MsgBox "Angelegte Zeile:" & " " & erste_freie_zeile
End Sub
Function i_max_Durchmesser()
If Not ((TextBox15.Text = "") And (TextBox18.Text = "")) Then
Dim lichter_Durchmesser As Double
lichter_Durchmesser = TextBox15.Value
Dim IRH As Double
IRH = TextBox18.Value
Dim i_max As Double
i_max = lichter_Durchmesser + 2 * IRH
End If
End Function
Function Kernrohr_Durchmesser()
If Not ((TextBox58.Text = "") And (TextBox17.Text = "")) Then
Dim Außendurchmesser As Double
Außendurchmesser = TextBox58.Value
Dim ARH As Double
ARH = TextBox17.Value
Dim KernrohrDurchmesser As Double
KernrohrDurchmesser = Außendurchmesser - 2 * ARH
End If
End Function
Private Sub CommandButton3_Click() ' Übernehmen
Call freie_zeile
Call i_max_Durchmesser
Call Kernrohr_Durchmesser
Sheets("Daten").Cells(erste_freie_zeile, 37) = KernrohrDurchmesser
Sheets("Daten").Cells(erste_freie_zeile, 24) = i_max
Sheets("Daten").Cells(erste_freie_zeile, 91) = TextBox1.Text
Sheets("Daten").Cells(erste_freie_zeile, 92) = TextBox2.Text
End Sub
Bei Debuggen springt er in die erste Zeile von
Sheets("Daten").Cells(erste_freie_zeile, 37) = KernrohrDurchmesser
egal was dort hinter dem "=" steht.
Wenn ich mit der Maus dann auf "KernrohrDurchmesser" gehe, steht dort "Leer"
Wenn ich die ganzen Subs, die ich aufrufen möchte, mit ins "Hauptsub" nehme, funktioniert das ganze... Da ich diese aber noch öfters verwenden muss, wäre ein "einfacher" Aufruf sinnvoller als so ein Kopiermarathon.
Danke für eure Hilfe =)
Grüße Larissa