Sub StringShuffle() ThisComponent.CurrentSelection.FormulaArray = ArrayShuffle(ThisComponent.CurrentSelection.FormulaArray) End Sub Function NumberRandom(ByVal min, ByVal max) Dim len len = max - min Dim res res = Int(Rnd() * len) + min NumberRandom = res End Function Function ArrayShuffle(ByVal src()) Dim res res = ArrayCopy(src) Dim t Dim j Dim u u = UBound(res) For i = u To 1 Step -1 j = NumberRandom(0, i + 1) t = res(j) res(j) = res(i) res(i) = t Next ArrayShuffle = res End Function Function ArrayCopy(ByVal src()) Dim res(UBound(src)) For i = 0 To UBound(res) res(i) = src(i) Next ArrayCopy = res End Function