[ Siki 5 @ 12.11.2016. 08:02 ] @
Problem naveden u prilogu. Hvala ljudima koji žele da pomognu. |
[ Siki 5 @ 12.11.2016. 08:02 ] @
[ 3okc @ 12.11.2016. 08:20 ] @
Ako bi bio ljubazan da pitanja pišeš na forumu a NE u prikačenim fajlovima. Ja npr nemam nameru da otvaram fajl zbog toga.
[ Siki 5 @ 12.11.2016. 09:49 ] @
Primedba prihvaćena.Pritiskom na taster F9 funkcija bira brojeve u svih 6 ćelija u koloni B. Da li je moguće da se funkcija primeni samo na pojedinačnu ćeliju odnosno kada želim proizvoljan izbor broja u ćeliji B1 da se u ostalim ćelijama ne obavi isti proces. Isto bi trebalo da važi i za ostale ćelije u koloni B.
[ djoka_l @ 12.11.2016. 10:52 ] @
Ne može.
Formule se preračunavaju svaki put kada se promeni sheet, pa onda se vrati i novi slučajni broj. Ako ti treba da se jednom izračuna, kopiraj iz kolone u kojoj je funkcija SAMO vrednosti u neku drugu kolonu, pa time praviš trenutnu sliku. Druga opcija je da se zabrani automatska rekalkulacija na šitu (ali onda neće preračunavati ni jednu formulu, dok mu ne kažeš, a kad zahtevaš rekalkulaciju promeniće se sve vrednosti RND funkcije). [ 3okc @ 12.11.2016. 12:15 ] @
Kao što djoka_l kaže - ne može, odnosno, samo uz sopstveno pisanu RND f-ju, tj preko VBA.
Code: Option Explicit Function MyRND() As Double Dim hold As Double Dim CallerAddr As String Dim MySel As Range Dim Cl As Range CallerAddr = Application.Caller.Address Set MySel = Intersect(Selection, Range(CallerAddr)) If MySel Is Nothing Then hold = Range(CallerAddr).Value MySel = hold Exit Function Else: For Each Cl In MySel.Cells MyRND = Rnd Next Cl End If End Function Osvežavanje radi sa Alt+F9, jer nije rečeno da f-ja bude "volatilna", tj da se preračunava svaki put. [ Siki 5 @ 12.11.2016. 13:33 ] @
Meni ovo ne funkcioniše. Lepio sam kod i u radnoj knjizi i u radnom listu ali se ništa ne menja. Funkcija radi na isti način, menja vrednost u svim ćelijama. Verovatno ja tu nešto pogrešno radim . Ako može pojašnjenje koda u vezi dvostrukog klika i ćelije C1 .Meni dvostruki klik na ćeliju C1 i prelaz u drugu ćeliju menja vrednosti u svim ćelijama. Da li treba primeniti neki drugi postupak za aktiviranje funkcije preko ovog koda ? Hvala.
[ 3okc @ 12.11.2016. 13:58 ] @
Funkcije idu u poseban modul i koristiš ih kao i svaku drugu, u ćeliju upišeš =MyRND() (u ovom slučaju)
[ Ivek33 @ 12.11.2016. 14:38 ] @
Citat: Da li je moguće da se funkcija primeni samo na pojedinačnu ćeliju odnosno kada želim proizvoljan izbor broja u ćeliji B1 da se u ostalim ćelijama ne obavi isti proces. - How do I refresh a formula on selected number of cells in excel without refreshing the whole workbook? [ Siki 5 @ 14.11.2016. 12:48 ] @
Ovo ne funkcioniše. Najpre radi se o funkciji RAND,a ne o RANDBETWEEN. Da li postoji skraćenica za funkciju RANDBETWEEN pa da se eventualno to ukuca u kod umesto MyRND(). Ova funkcija ne može da se osveži sa alt + F9. Radi samo posle dvostrukog klika na C1 pa enter. Ili ja tu nešto pogrešno radim. Hvala.
[ 3okc @ 14.11.2016. 13:00 ] @
Ne znam, kod mene radi, čak i samo sa F9 sada.
RAND sam koristio kao prostiju varijantu jer je poenta bila videti radi li uopšte proračun samo na obeleženim ćelijama.. a to, koju ćeš formulu, lako može naknadno da se podesi. Npr: Code: Option Explicit Function MyRND(ilower As Integer, iupper As Integer) As Double Dim CallerAddr As String Dim MySel As Range Dim hold As Double CallerAddr = Application.Caller.Address Set MySel = Intersect(Selection, Range(CallerAddr)) If Not MySel Is Nothing Then MyRND = Application.RandBetween(ilower, iupper) Else: hold = CDbl(Range(CallerAddr).Value) MyRND = hold End If End Function Naravno, sada će i MyRND zahtevati ulazne veličine, kao RANDBETWEEN. [ Siki 5 @ 14.11.2016. 16:38 ] @
Sa ovim kodom radi i kod mene ali se javlja novi problem kada se funkcija primeni na ostalih 5 ćelija. U ovom slučaju prijavljuje kružnu referencu valjda zato što se funkcija ne vezuje za konkretnu ćeliju nego je ista u svim ćelijama. Ako je moja pretpostavka tačna da li je onda moguće nešto kao MyRND(A1)6;10).Znam da je ovako kako sam napisao nemoguće ali nešto slično tome. Hvala.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|