[ tasman_76_82 @ 18.10.2006. 19:35 ] @
Evo jos jednog pitanjceta.
Kako napraviti macro koji ce da radi sledece:
Ako imam tabelu u kojoj su mi u celiji jednoj ispod druge uneti podaci, recimo,
12
25
35
16
20
40

I sad on treba od tih unetih podataka da mi izabere one koji su, recimo manji od 20 i da ih ispise, ali pri tom da mi ispise prvo u celiji iznad
"<20", a onda ih navede
12
16
i onda mi ispod njih upise
">= 20" i onda navede ostale
25
35
20
40
i onda sumira sve:
"SVEGA" i izbaci rezultat.
Pri tom u tabeli u kojoj se unose podaci ne mora uvek da bude uneto 6 brojeva, to je promenjivo.
Da li je uopste moguce da mi on na osnovu te tabele pravi drugu u drugom sheet-u, po tom kriterijumu i kako?
Ja sam probala kroz VB, ali... :-(


[Ovu poruku je menjao tasman_76_82 dana 18.10.2006. u 21:42 GMT+1]

[Ovu poruku je menjao Jpeca dana 31.10.2006. u 16:32 GMT+1]
[ Jpeca @ 31.10.2006. 15:30 ] @
Poruka premeštena u novu temu
[ timmy @ 31.10.2006. 15:59 ] @
Moze da se uradi i bez makroa, kreiranjem pivot tabele
u kojoj ce podaci biti grupisani po intervalima koje navedes.

Pogledaj ovaj jednostavan primer
[ tasman_76_82 @ 03.11.2006. 20:55 ] @
Da ali...
meni treba da mi u toj tabeli stoje i brojevi koje je on sumirao, znaci ne samo sume, vec bas onako kako je gore navedeno, da ispise prvo kriterijum koji ispunjavaju, pa ih navede, potom sledeci kriterijum, pa navede i tako dalje i onda sve sumira i da se sve to vidi.
[ Jpeca @ 06.11.2006. 10:12 ] @
Nadam se da je ovo što si tražila. Kroz Inputbox zadaju se ulazni podaci i celija od koje se smestaju rezultati. Uslov je fiksiran u kodu, ali se uz sitne intervencije moze i on prezeti iz Inputbox-a, ili kao vrednost neke celije

Code:

Sub FilterList()
Dim rngSource As Range
Dim rngDest As Range
Const uslov As Double = "20"   ' Ovde promeniti uslov

On Error Resume Next
Set rngSource = Application.InputBox("Selektuj listu za filtriranje:", "Ulazni podaci", Type:=8)
If (rngSource Is Nothing) = True Then Exit Sub

Set rngDest = Application.InputBox("Selektuj odredišnu celiju:", "Filrirani podaci", Type:=8)
If (rngDest Is Nothing) = True Then Exit Sub

' Prvi deo
rngDest.Value = "< " & uslov
r = 1
For Each c In rngSource
  If c.Value < uslov Then
   rngDest.Offset(RowOffset:=r).Value = c.Value
   r = r + 1
  End If
Next c
' Drugi deo
rngDest.Offset(RowOffset:=r).Value = ">= " & Str(uslov)
r = r + 1
For Each c In rngSource
  If c.Value >= uslov Then
   rngDest.Offset(RowOffset:=r).Value = c.Value
   r = r + 1
  End If
Next c
' Total
rngDest.Offset(RowOffset:=r).Value = "SVEGA"
rngDest.Offset(RowOffset:=r + 1).Formula = "=SUM( " & rngDest.Address & ":" & rngDest.Offset(r - 1).Address & ")"
rngDest.Offset(RowOffset:=r + 1).Font.Bold = True

End Sub

[ tasman_76_82 @ 09.11.2006. 17:49 ] @
Hey, izvini sto ranije nisam odgovorila... Bila sam u nekoj frci.. Da, to je od prilike to sto mi treba, mislim da cu se snaci, ako ne, javicu se.... Hvala!