10. december 2004 - 15:52Der er
11 kommentarer og 2 løsninger
komma i værdier i liste
Min komboliste kan indeholde værdier med kommaer, hvilket giver problemer når jeg vil f.eks. hive værdierne ind i et array. For i = 0 To frm.Controls(kontrol(ControlNumber).name_2).ListCount - 1 Debug.Print frm.Controls(kontrol(ControlNumber).name_2).Column(0, i)
Hvordan kan man "hakke" værdierne i en liste op, så f.eks. ABINGDON, UK UK Kbh H, Denmark Denmark
kommer til at stå som ovenstående i stedet for ABINGDON UK UK Kbh H Denmark Denmark
De på listen valgte værdier bruges i en formular-filterstreng
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Hmm...jeres forslag ligner noget fra ASP. Jeg kan IKKE bede brugerne om at indtaste \ foran , eller ' det vil være umuligt at styre. For at anskueliggøre problemet lidt bedre, er her hvad der kommer i min SELECT (SQL streng):
Først navnene, dernæst hvordan de kommer til at se ud i min connect streng Birds Eye Wall's Ltd Cornic S.A. Bremerhaven, Germany
(([Kundenavn] LIKE 'Birds Eye Wall's Ltd') (([Kundenavn] LIKE 'Cornic S.A.') (([Oplastningssted] LIKE 'Bremerhaven') or ([Oplastningssted] LIKE 'Germany')
Første linie fremkalder en fejl, da der indgår et ulige antal ' Anden linie er der ingen problemer med Tredje linie bliver jo, som det kan ses, delt i 2, hvilket er "forkert".
Koden som formaterer en del af forespørgselsstrengen: FilterTekst = FilterTekst & "([" & kontrol(ControlNumber).ControlSource & "] LIKE '" & frm.Controls(kontrol(ControlNumber).name_2).Column(0, i) & "')"
Den med komma kan vi godt glemme, det er noget i koden der "går galt"! :( Debug.Print frm.Controls(kontrol(ControlNumber).name_2).Column(0, 0) (giver det forkerte resultat) Debug.Print Forms("Søg i Ordreseddel").Controls("felt_1").Column(0, 0) (giver det rigtige resultat)
Er ikke helt sikker på at du er med på hvad jeg mener (eller også er det mig der ikke fatter din forklaring!)
en af værdierne i min dropdown liste kunne være Kbh H, Denmark
Hvis jeg forsøger at Debug.Print'e denne værdi med Debug.Print Forms("Søg i Ordreseddel").Controls("felt_1").Column(0, i) får jeg det rigtige resultat. Men vedkommende som har lavet programmet (jeg har bare overtaget udviklingen af systemet), bruger denne stump kode til at hente værdierne i listen Debug.Print frm.Controls(kontrol(ControlNumber).name_2).Column(0, 0) Som giver det forkerte resultat (værdien bliver af en eller anden grund splittet til 2 værdier, hvis værdien har et komma, 3 værdier, hvis der er 2 kommaer og så fremdeles)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.