Sub Create_Matrix()
Dim a As Integer, b As Integer, c As Integer, i As Integer, j As Integer, X As Integer
If Matrix_ready = False Then
Worksheets("DB_Goods").Activate
ActiveWorkbook.Worksheets("DB_Goods").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("DB_Goods").Sort.SortFields.Add Key:=Range( _
"A2:A1001"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("DB_Goods").Sort
.SetRange Range("A1

1001")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ArGoods = Worksheets("DB_Goods").Range("A2

" & AzGoods + 1)
ArData_Goods = Worksheets("Prices").Range("A2:C" & AzGoods + 1)
ArData_Stations = Worksheets("DB_Stations").Range("A2:Q" & AzRegStations + 1)
ReDim ArData_Buy(1 To AzGoods + 2, 1 To AzRegStations + 2)
ReDim ArData_Sell(1 To AzGoods + 2, 1 To AzRegStations + 2)
ReDim ArData_Stock(1 To AzGoods + 2, 1 To AzRegStations + 2)
'Fill arrays vorbereiten
ArData_Buy(1, 1) = "Station_ID"
ArData_Buy(2, 1) = "Star_ID"
For b = 3 To AzGoods + 2
ArData_Buy(b, 1) = ArData_Goods(b - 2, 1)
ArData_Buy(b, 2) = ArData_Goods(b - 2, 2)
DoEvents
Next b
For c = 3 To AzRegStations + 2
ArData_Buy(1, c) = ArData_Stations(c - 2, 1)
ArData_Buy(2, c) = ArData_Stations(c - 2, 17)
DoEvents
Next c
ArData_Sell = ArData_Buy
ArData_Stock = ArData_Buy
For a = 1 To AzRegStations
DoEvents
For b = 1 To AzGoods
ArData_Buy(b + 2, a + 2) = Ar_DBPrices((a - 1) * AzGoods + b, 4)
ArData_Sell(b + 2, a + 2) = Ar_DBPrices((a - 1) * AzGoods + b, 5)
ArData_Stock(b + 2, a + 2) = Ar_DBPrices((a - 1) * AzGoods + b, 6)
DoEvents
Next b
Next a
Worksheets("DB_Goods").Activate
ActiveWorkbook.Worksheets("DB_Goods").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("DB_Goods").Sort.SortFields.Add Key:=Range( _
"B2:B1001"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("DB_Goods").Sort
.SetRange Range("A1

1001")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Panel_DB_Commodity.ComboBox1.RowSource = "DB_Goods!A2

" & AzGoods + 1
Matrix_ready = True
End If
End Sub