Är det poster från en databas du sparar i din array?
- I sådana fall kan du använda GetRows och köra en DISTINCT i sql-satsen och på så sätt plocka distinkta poster.
ex.
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="& Server.MapPath("dbName.mdb")
arrRecSet = Connect.Execute("SELECT DISTINCT fldName FROM tblName").GetRows
Connect.Close : Set Connect = Nothing
Response.Write "Just nu finns det "& UBound(arrRecSet,2) &" unika poster.."
%>
hmmm.. ja du, är inte så inne på arrays riktigt än men den är två dimentionell och jag skapar den så här:
Set oTextFil = oFSO.OpenTextFile(sDbFil)
Do While Not oTextFil.AtEndOfStream
x = x + 1
sPost = Split(oTextFil.ReadLine, "|")
For i = 0 To Ubound(sPost)
DbArray(i,x) = sPost(i)
Next
Loop
oTextFil.Close : Set oTextFil = Nothing
varje rad i textfilen har olika poster separerade med | så första dimentionen är alltså värdet och andra är raden.
det jag vill få fram hur många olika som finns är ifrån:
DbArray(1,x)
alltså andra (det börjar på 0 få 1 blir ju andra) värdet från varje rad
Function Unika()
sTemp = ""
For x = 1 To Ubound(DbArray,2)
If InStr(sTemp, DbArray(1,x) & ",") <= 0 Then sTemp = sTemp & DbArray(1,x) & "," : iTemp = iTemp + 1
Next
Unika = iTemp
End Function
men är detta verkligen den bästa metoden?
Red/
har testat lite nu och det verkar vara den bästa av de som fanns där iallafall, skilljer endast några millesekunder men ändå
261 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91