[Libreoffice-bugs] [Bug 144924] Split Basic function return Array Type String, not Variant/String like the oldest version
bugzilla-daemon at bugs.documentfoundation.org
bugzilla-daemon at bugs.documentfoundation.org
Tue Oct 5 11:45:01 UTC 2021
https://bugs.documentfoundation.org/show_bug.cgi?id=144924
--- Comment #7 from edil at helpidea.net ---
(In reply to Andreas Heinisch from comment 6)
Hi Andreas
it is not only a problem of speed, ma also to design macro:
I have a range of string numbers rgDesMisu, where the rows are the 3 rooms
dimension Long Width Height, one row for each room. I transform each row for
calculate the ceiling in one row and if H the lateral surface in another row.
To avoid a lot of Redim, and don't know in advance the number of result rows,
Dim aaDesMisus : aaDesMisus = rgDesMisu.DataArray
Dim sPareti$, sSoffitto$
For r = 0 To UBound(aaDesMisus)
aDesMisus = aaDesMisus(r)
sDes = Trim(CStr(aDesMisus(0))) : sN = Trim(CStr(aDesMisus(1)))
sL = Trim(CStr(aDesMisus(2))) : sB = Trim(CStr(aDesMisus(3))) :
sHA = Trim(CStr(aDesMisus(4)))
' Se 2 Dimensioni, resta invariato
If sL = "" Or sB = "" Or sHA$ = "" Then
sCells = sCells & "§§" & Join(Array(sDes, sN, sL, sB,
sHA), "::")
Goto NexR
End If
' 3 Dimensioni
sPareti = Join(Array(sDes & " >Pareti", IIF(sN="", "2", sN &
" * 2") , sL & " + " & sB, "", sHA), "::")
sCells = sCells & "§§" & sPareti
sCells = sCells & "§§" & Join(Array(sDes & " >Soffitto", sN,
sL , sB, ""), "::")
NexR:
Next
sCells = Mid(sCells, 3)
Dim aaDesMisusOut : aaDesMisusOut = Split(sCells, "§§") ' aaDesMisusOut
For r = 0 To UBound(aaDesMisusOut)
aaDesMisusOut(r) = Split(aaDesMisusOut(r), "::")
Next
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20211005/46a2f3a2/attachment.htm>
More information about the Libreoffice-bugs
mailing list