Predmet:Re: pomoc oko vloocap funkcije
  
  
  Evo ti procedura.
Ovo sve kopiraj u neki modul.
Procedura racuna samo iz sitova koje si naveo nazive i to od januara do decembra ali se moze izmijeniti.
U situ u kojemzelis da ti racuna moras imati sifre svih osoba.
Procedura se poziva tako sto u red (u neko polje na kraju tablice) u kome imas u a polju sifru osobe za koju zelis da sracuna napises:
=Saberi(A5:A39)
a5 je prvo polje a a39 poslednje na spisku.
Mozes to selektoovati i misem.
Pritisnes enter i dobit ces sabrano.
PreuzmiIzvorni kôd (Visual Basic):- Option Explicit 
-   
- Function Saberi(Rng As Range) 
- Dim Sit As Worksheet 
- Dim ImeSita As String, ImeCelije As String 
- Dim Poz As Integer, Sifra As Integer 
- Dim Red As Range 
- Dim Vrijednost As Integer 
- Dim AktivniRed As Integer 
-   
- AktivniRed = ActiveCell.Row 
- Const siti = "JanuaryFebruaryMarchAprilMayJuneJuly AugustSeptemberOctoberNovemberDecemberJanuary" 
- Set Red = ActiveSheet.Cells(AktivniRed, 1) 
- Sifra = Red 
-     For Each Sit In Worksheets 
-     ImeSita = Sit.Name 
-     Poz = InStr(1, siti, ImeSita, vbBinaryCompare) 
-     If Poz > 0 Then 
-     Vrijednost = Vrijednost + Nadji_Vrijednost(ImeSita, Rng, Sifra) 
-     End If 
-     Next Sit 
-     Saberi = Vrijednost 
- End Function 
-   
-   
- Function Nadji_Vrijednost(ImeS As String, Rn As Range, Sifra As Integer) As Integer 
- Dim Sit As Worksheet 
- Dim Red As Range, RedB As Integer 
- Dim CEL As Range, R As Range 
- Dim a 
-   
- a = Rn.Address 
- Set Sit = Worksheets(ImeS) 
- Sit.Activate 
- Set R = Sit.Range(a) 
- For Each Red In R.Rows 
- If Red = Sifra Then 
- RedB = Red.Cells.Row 
- Set CEL = Sit.Cells(RedB, 34) 
- Nadji_Vrijednost = CEL.Cells 
- End If 
- Next Red 
- End Function 
         
            Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
        
      	Ovaj post je ureden      	
1
      	puta. Posljednja izmjena 06.06.2015 12:04 od strane zxz.    		
 
 
   		