En vis mann sa at data alltid er skitne, og det er i hvert fall ofte tilfelle hvis man har fått datasettet fra en snodig database, eller for den saks skyld bare kopiert data fra en nettside.
Noen ganger følger det med noen spesialtegn på lasset, og disse kan sågar være «usynlige», slik at det er vrient å få bukt med dem. Dette gjelder særlig tegn som «non-breakable-space» og linjeskift («carriage return» og «line feed»).
Her er en liten makro som lister opp alle tegn i en celle, slik at man i det minste vet hvilket tegn det er snakk om. Tallet som dukker opp bak hvert tegn er ASCII-koden, du kan altså bruke VBA-funksjonen chr() til å erstatte/slette tegnet.
Sub showChar()
Dim charText As String
Dim charTextLen As Integer
Dim msg As String
Dim charChar As String
Dim charInt As String
charText = ActiveCell.value
charTextLen = Len(charText)
For i = 0 To charTextLen - 1
charChar = Mid(charText, i + 1, 1)
charInt = Asc(charChar)
If i > 0 Then
msg = msg + vbCrLf
End If
msg = msg + charChar
msg = msg + ": "
msg = msg + charInt + vbCrLf
Next
msgBox (msg)
End Sub
Er denne bloggen fremdeles i live og er det mulig å få hjelp med VBA til å løse noen problemer med en kokebok/oppskriftsamling i excel. Begynner desverre å bli litt rusten på dette.
Mulig vi er like rustne, men fyr løs.