[ ramzesIV @ 09.12.2011. 13:34 ] @
pretpostavljam da je ovo najlaksi i najgluplji makro

dakle u koloni G3 pa na dole su brojevi decimalni (1,42; 9,56; 0,50; ...)

ja hocu da napisem makro da umesto tog broja stoji procenat (1,42%; 9,56%; 0,50%, ...)

nesto pokusah sa do until isempty, ali makro uopste ne radi.


zar je moguce da ne moze jednostavno da se napise i = i/100???

hvala unapred na pomoci...

[ Jpeca @ 09.12.2011. 15:45 ] @
Naravno da može, na različite načine. Nisi ostavila svoj pokušaj da bi mogao da vidim gde je greška. Vrlo je bitno kod startovanja makroa koja je trenutno ćelija aktivirana, ako u makro nisi predvidela da se selektuje neka ćelija ili opseg.


Za ovo što hoćeš da uradiš ti nije neophodan makro. Imaš opciju divide u okviru Paste Special. Dakle upišu u jednu pomoćnu ćeljiu 100 i onda tu ćeliju kopiraj
Aktiviraj opseg gde želiš da napraviš promene i onda Paste Special, izaberi Divide.

Makro bi mogao ovako

Code:

Sub PrebaciUProcente()
' Makro koji prebacuje vredosti u procente u koloni G 
' počinje od G3

Dim cl As Range
   Set cl = ActiveSheet.Range("G3")  ' Selektuje pocetnu celiju
   Do
      cl.Value = cl.Value / 100
      cl.NumberFormat = "0%"
      Set cl = cl.Offset(RowOffset:=1)   'sledeca celija ispod
   Loop Until IsEmpty(cl.Value)
End Sub

[ ramzesIV @ 09.12.2011. 16:10 ] @
iskreno, bilo me sramota da stavim celi kod,
ali je bio tako sto sam mislila da moze: do until isempty: i= i / 100, loop.

hvala mnogo.
[ Brodoplovac @ 09.12.2011. 16:24 ] @
=IF(A1>0;VALUE(A1&"%");"")

Proveriš da li ima vrednost u ćeliji.
Konkatenuješ znak %.
Pretvoriš dobijeni string u broj.