Ich dreh am Rad. Hier ist eine Funktion die gehen müsste, aber sie wirft den o.g. Fehler.
Ich berechne Zeug. Setze zwei Zahlen (eine Long, eine integer) in einen String zusammen.
Das Ergebnis ist ein String. Zur Sicherheit mache ich nochmal cStr.
Dennoch kommt o.g. Fehler wenn ich den String in eine Zelle Schreibe
Der gleiche String in einer MsgBox funktioniert.
Dim LetzteZeile As Long
Dim x As Long
Dim w As Boolean
Dim c As Integer
Dim sd, sa, sb, sc As String
c = 0
LetzteZeile = Range("G250000").End(xlUp).Row
For x = 2 To LetzteZeile
If Cells(x, 7).Value <> "NaN" Then
' Cells(x, 7) = CLng(Cells(x, 7))
' Cells(x, 7).NumberFormat = "General"
'w = InStr(Cells(x, 1).Value, "76G") > 0
If (Cells(x, 7).Value > 80) Then
If (Cells(x, 7).Value < 101) Then
If InStr(Cells(x, 1).Value, "76G") = 0 Then
c = c + 1
End If
End If
End If
End If
Next
sc = "Von " & x - 1 & " links (M - B) sind " & c & " mit ?ber 80% ausgelastet"
sd = CStr(sc)
Sheets("Berechnung").Cells(23, 18) = sd
'Laufzeitfehler '9'
'Index ausserhalb des g?ltigen Bereichs
'MsgBox (sd)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Den gleichen Kram in einer eigenen Funktion klappt
Sub Mist(ByRef Sf As String)
'Sheets("Tabelle1").Cells(23, 18) = Sf
Sheets("Tabelle1").Cells(3, 8) = Sf
End Sub
Sub RufMich()
Dim L As Long
Dim c As Integer
Dim sd, sa, sb, sc As String
Dim s1, s2 As String
L = 2147483641
c = Abs(Int((39999 - 0 + 1) * Rnd + 0)) 'zufall damit man sieht das sich was bewegt
'sa = CStr(L - 1)
sb = CStr(c)
sd = "Von " & L - 1 & " links (M - B) sind " & c & " mit ?ber 80% ausgelastet"
sc = CStr(sd)
Call Mist(sc)
End Sub
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
|