- Function Raspodjela(Optional BrojOsoba As Integer = 5) 
-     Dim Kovanice As Object 
-     Dim Vrijednosti As Object 
-     Dim UkupnaVrijednost As Currency 
-     Dim Apoen As Variant 
-     Dim Podjela As Currency 
-     Dim I, N As Integer 
-     Dim KovanicaVrijednost As Currency 
-     Dim BrojKovanica As Integer 
-     Dim KovanicaRaspodjela As Integer 
-     Dim OsobaIndex As Integer 
-     Dim PodjelaPara() As Integer 
-      
-     Set Kovanice = CreateObject("Scripting.Dictionary") 
-     Kovanice.Add "50c", 24  ' 50 centi 
-     Kovanice.Add "1e", 28   ' 1 euro 
-     Kovanice.Add "2e", 29   ' 2 eura 
-     Kovanice.Add "5e", 4    ' 5 eura 
-      
-     Set Vrijednosti = CreateObject("Scripting.Dictionary") 
-     Vrijednosti.Add "50c", 0.5 
-     Vrijednosti.Add "1e", 1 
-     Vrijednosti.Add "2e", 2 
-     Vrijednosti.Add "5e", 5 
-      
-     ReDim PodjelaPara(1 To BrojOsoba, 1 To 4) 
-     UkupnaVrijednost = 0 
-      
-     For Each Apoen In Kovanice.Keys 
-         UkupnaVrijednost = UkupnaVrijednost + (Kovanice(Apoen) * Vrijednosti(Apoen)) 
-     Next Apoen 
-   
-     Podjela = UkupnaVrijednost / BrojOsoba 
-     OsobaIndex = 1 
-      
-     For I = 1 To BrojOsoba 
-         IznosPreostali = Podjela 
-          
-         For Each Apoen In Array("5e", "2e", "1e", "50c") 
-             KovanicaVrijednost = Vrijednosti(Apoen) 
-             BrojKovanica = Kovanice(Apoen) 
-             KovanicaRaspodjela = 0 
-             Do While IznosPreostali >= KovanicaVrijednost And BrojKovanica > 0 
-                  
-                 If I = BrojOsoba Then 
-                 KovanicaRaspodjela = BrojKovanica 
-                 BrojKovanica = 0 
-                 IznosPreostali = IznosPreostali - KovanicaVrijednost 
-                 Else 
-                 KovanicaRaspodjela = KovanicaRaspodjela + 1 
-                 IznosPreostali = IznosPreostali - KovanicaVrijednost 
-                 BrojKovanica = BrojKovanica - 1 
-                 End If 
-   
-             Loop 
-             PodjelaPara(OsobaIndex, Application.Match(Apoen, Array("50c", "1e", "2e", "5e"), 0)) = _ 
-             PodjelaPara(OsobaIndex, Application.Match(Apoen, Array("50c", "1e", "2e", "5e"), 0)) + KovanicaRaspodjela 
-             Kovanice(Apoen) = BrojKovanica 
-         Next Apoen 
-         OsobaIndex = OsobaIndex + 1 
-     Next I 
-      
-      
-     ' Ispis rezultata u Excel 
-     Dim ImesSita As String 
-     ImesSita = "Raspodjela kovanica" 
-     Obrisi (ImesSita) 
-     Dim ws As Worksheet 
-     Set ws = ThisWorkbook.Sheets.Add 
-     ws.Name = ImesSita 
-      
-     ' Ispis naziva stupaca (kovanice) 
-     ws.Cells(1, 1).Value = "Osoba" 
-     ws.Cells(1, 2).Value = "50c" 
-     ws.Cells(1, 3).Value = "1e" 
-     ws.Cells(1, 4).Value = "2e" 
-     ws.Cells(1, 5).Value = "5e" 
-      
-     ' Ispis raspodjele po osobama 
-     For I = 1 To BrojOsoba 
-         ws.Cells(I + 1, 1).Value = "Osoba " & I 
-         For N = 1 To 4 
-             ws.Cells(I + 1, N + 1).Value = PodjelaPara(I, N) 
-         Next N 
-     Next I 
-      
-     For I = 1 To BrojOsoba 
-         Dim suma As Currency 
-         suma = PodjelaPara(I, 1) * 0.5 + PodjelaPara(I, 2) * 1 + PodjelaPara(I, 3) * 2 + PodjelaPara(I, 4) * 5 
-         ws.Cells(I + 1, 6).Value = "'  " & suma & " " & Chr(128) 
-     Next I 
-         Dim BrojApoena As Integer 
-     For I = 2 To 5 
-     BrojApoena = 0 
-         For N = 2 To BrojOsoba + 1 
-         BrojApoena = BrojApoena + ws.Cells(N, I).Value 
-         Next N 
-    ws.Cells(BrojOsoba + 2, I).Value = BrojApoena 
-     Next I 
-     MsgBox "Gotovo!", vbInformation 
- End Function 
- Function Obrisi(Naziv As String) 
-     Dim ws As Worksheet 
-      
-     On Error Resume Next 
-     Set ws = ThisWorkbook.Sheets(Naziv) 
-     On Error GoTo 0 
-     If Not ws Is Nothing Then 
-         Application.DisplayAlerts = False 
-         ws.Delete 
-         Application.DisplayAlerts = True 
-     End If 
- End Function