29. januar 2010 - 23:26Der er
5 kommentarer og 1 løsning
Funktion med Split og Left
Hej,
I en streng (Serie) der indeholdende nogle serienumre på 10 ciffer (adskildt med blankt mellemrum), tæller nedenstående funktion antal forekomster af et specifikt serienummer.
Dim Serie Serie="0204510008 0204510004 0204510011 1204510012 1214510002 0204510004"
Seriearr=Split(Serie," ")
Ordrefound=0 For I=LBound(Seriearr) to UBound(Seriearr) If LCase(Seriearr(I)) = "0204510004" Then Ordrefound = Ordrefound + 1 Next Response.Write(Ordrefound)
Eksemplet giver "2" - så langt så godt.
Problemet er, at serienumre skal tælles op efter om de første 6 ciffer matcher et angivet 6 ciffer ordrenummer.
Jeg har prøvet nedenstående uden held:
Dim Serie Serie="0204510008 0204510004 0204510011 1204510012 1214510002 0204510004"
Seriearr=Left(Split(Serie," "),6)
Ordrefound=0 For I=LBound(Seriearr) to UBound(Seriearr) If LCase(Seriearr(I)) = "020451" Then Ordrefound = Ordrefound + 1 Next Response.Write(Ordrefound)
Ordrefound=0 For I=LBound(Seriearr) to UBound(Seriearr) If Left(LCase(Seriearr(I)),6) = "0204510004" Then Ordrefound = Ordrefound + 1 Next Response.Write(Ordrefound)
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.