Zitat:
Ich habe sie so abgewandelt
Wie ich schon sagte es bleibt dir überlassen wie du das später auslegen willst.
Aber gut wenn es jetzt funktioniert.
Mein Lösungsansatz war nur als Denkanstoß gedacht.
Zitat:
' Hat denn VBA keine Funktion wie Pascal's Min?? --> Bis := Min(a_Anz, Anzahl)
Min ist eine Excel Funktion oder?
Code:
WorksheetFunction.Min(20, 501, 561, 45, 78)
Wenn du das nicht willst dann mache dir selber was wenn du denkst es ist von nöten.
LBound = MIN
UBound = MAX
Code:
Private Function Min(ParamArray values() As Variant) As Variant
Dim i As Integer
Dim min_value As Variant
min_value = values(LBound(values))
For i = LBound(values) + 1 To UBound(values)
If min_value > values(i) Then min_value = values(i)
Next
Min = min_value
End Function
Private Function Max(ParamArray values() As Variant) As Variant
Dim i As Integer
Dim max_value As Variant
max_value = values(LBound(values))
For i = LBound(values) + 1 To UBound(values)
If max_value < values(i) Then max_value = values(i)
Next
Max = max_value
End Function
' Teste Min, Max
Private Sub cmdGo_Click()
txtMin.Text = Format$(Min( _
CInt("2873"), _
CInt("4398"), _
CInt("7846"), _
CInt("1876"), _
CInt("4792"), _
CInt("3982"), _
CInt("4863"), _
CInt("9382")))
txtMax.Text = Format$(Max( _
CInt("2873"), _
CInt("4398"), _
CInt("7846"), _
CInt("1876"), _
CInt("4792"), _
CInt("3982"), _
CInt("4863"), _
CInt("9382")))
End Sub
Etwas unsauber weil du hier Delimiter ohne Angabe als Variant definierst.. ist aber Byte!
Wenn dann so!
Code:
Const Delimiter As Byte = 124
Siehe die Definition von PAnsiChar_To_Excel(bla bla.. Delimiter As Byte
Code:
Dim i As Long
Dim n_Anz As Long
Dim Bis As Long
zu
Code:
Dim i As Integer
Dim n_Anz As Integer
Dim Bis As Integer
Ein 32Bit DatenTyp ist für einfache for.. Next schleifen nicht nötig.
Zitat:
Die beiden Lösungen sind zum Ausprobieren im beiliegenden Excel-File ToExcel_Test_2.xlsm vorhanden
Habe Office wieder deinstalliert da ich es eigentlich nicht brauche und es nur eine Test Version war.
PS:
VBA ist kein Delphi daher wäre es besser du verwendest die Format Funktion des Forum
Code:
Dim x As Integer
Dim i As Integer
nicht
Delphi-Quellcode:
var
x:Integer;
i:Integer;
dann liest es sich besser.
gruss