Dim z As Range
Dim inputstring As String
Dim brojdecimalnihmesta As Integer
Dim DecSep As String
Dim ThousendSep As String
Dim CurrentSelectionRng As String
Dim eIndex As Long
Dim eRowIndex As Long
CurrentSelectionRng = Selection.Address
On Error Resume Next
MsgBox "Pre nego sto unesete format kolone: broj, tekst, datum, procenat; izaberite jednu celiju u koloni, koja ce biti selektovana", vbOKOnly
inputstring = InputBox(Prompt:="Unesi format kolone('b' - broj, 't' - tekst, 'd' - datum, 'p' - procenat", Title:="Format kolone")
If inputstring = "b" Then
MsgBox "Format celije(a) ce biti broj", vbOKOnly
brojdecimalnihmesta = InputBox(Prompt:="Unesi broj decimalnih mesta", Title:="Decimalna mesta")
eIndex = Application.ActiveCell.Column
eRowIndex = Application.ActiveSheet.Cells(Rows.count, eIndex).End(xlUp).Row
Range(Cells(2, eIndex), Cells(eRowIndex, eIndex)).Select
System = Application.UseSystemSeparators
With Application
.DecimalSeparator = ","
.ThousandsSeparator = "."
.UseSystemSeparators = False
End With
If System = True Then
DecSep = Application.International(xlDecimalSeparator)
ThousendSep = Application.International(xlThousandsSeparator) 'not used;for information only
Else
DecSep = Application.DecimalSeparator
ThousendSep = Application.ThousandsSeparator 'not used;for information only
End If
For Each z In Selection
If brojdecimalnihmesta = 0 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
ElseIf brojdecimalnihmesta = 1 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
ElseIf brojdecimalnihmesta = 2 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
ElseIf brojdecimalnihmesta = 3 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
ElseIf brojdecimalnihmesta = 4 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
ElseIf brojdecimalnihmesta = 5 Then
z.Value = FormatNumber(z.Value, brojdecimalnihmesta, , , vbTrue)
End If
Next
With Selection
.HorizontalAlignment = xlRight
' .NumberFormat = "###,###,###,###0.00"
End With
Exit Sub
End If
kada primenim moj makro svaki broj na primer 34563,9843 se prikazuje u formatu 34.563,98 kada unesem broj decimalnih mesta 3 ili 4 ili 5. kada izaberem broj decimalnih mesta 1 prikaz u excel-u je 34.563,90. prikaz za separatorom i decimalama je meni uredu, ali zasto ne prikazuje decimalana mesta veca od 2