'Funktion som lägger uppdragsnumret före varje rad i exportfilen samt trimmar bort radbrytningar och tillåter endast 70 tecken per rad.
function ConvertString(sTaskNr, sText)
dim sLength, sFirstChar, index
dim a, n, k, r, str, re
sLength = 70
sFirstChar = 2
n = array()
k = 0
r = 0
index = 0
str = sTaskNr & ";"
set re = new regexp
re.global = true
re.pattern = "(?:<br>)+"
sText = re.replace(sText, " ")
set re = nothing
sText = replace(sText, ";", "")
a = split(sText)
while index <= ubound(a)
if sFirstChar + r + len(a(index)) > sLength then
str = vbcrlf & sTaskNr & ";"
r = 0
sFirstChar = 2
end if
r = r + 1
sFirstChar = sFirstChar + len(a(index))
redim preserve n(k)
n(k) = str & a(index)
k = k + 1
index = index + 1
str = ""
wend
ConvertString = join(n)
end function
Hur modifierar man den att även trimma bort " , dvs byta ut citationstecken, mot tom sträng?
Kör bara en vanlig Replace:
Replace(str, """", "")
Aha, du gav mig ett uppslag :)
Men borde det inte vara så här då:
'Funktion som lägger uppdragsnumret före varje rad i exportfilen samt trimmar bort radbrytningar och tillåter endast 70 tecken per rad.
function ConvertString(sTaskNr, sText)
dim sLength, sFirstChar, index
dim a, n, k, r, str, re
sLength = 70
sFirstChar = 2
n = array()
k = 0
r = 0
index = 0
str = sTaskNr & ";"
set re = new regexp
re.global = true
re.pattern = "(?:<br>)+"
sText = re.replace(sText, " ")
set re = nothing
'Ta bort semikolon
sText = replace(sText, ";", "")
'Ta bort citationstecken
sText = replace(sText, """", "")
a = split(sText)
while index <= ubound(a)
if sFirstChar + r + len(a(index)) > sLength then
str = vbcrlf & sTaskNr & ";"
r = 0
sFirstChar = 2
end if
r = r + 1
sFirstChar = sFirstChar + len(a(index))
redim preserve n(k)
n(k) = str & a(index)
k = k + 1
index = index + 1
str = ""
wend
ConvertString = join(n)
end function
Dvs
'Ta bort citationstecken
sText = replace(sText, """", "")