Hej! Det finns mer än ett sätt att flå en katt. Lika så inom programmering.<BR> Hej Andreas! Jag har löst det!Sortera fält i kombinationsruta
Jag har en kombinationsruta med 5 fält.
I mitt formulär skulle jag vilja kunna sortera kombinationsrutan efter valfritt fält.
Kan man på något sätt, med t.ex. en annan kombinationsruta där man väljer vilket fält man vill sortera efter, sortera den första.
Jag antar att man måste skriva lite kod.
Tack på förhand!
/Lars LantzSv: Sortera fält i kombinationsruta
Jag föreslår att du sparar en fråga för det olika sorterings alternativen. t.ex:<BR>
<BR>
qryComboKunder<BR>
SELECT *<BR>
FROM Kunder<BR>
<BR>
qryComboKunderFörnamn<BR>
SELECT *<BR>
FROM Kunder<BR>
ORDER BY Förnamn<BR>
<BR>
qryComboKunderEfternamn<BR>
SELECT *<BR>
FROM Kunder<BR>
ORDER BY Efternamn<BR>
osv...<BR>
<BR>
Sedan låter du kombon som innehåller sorterings alternativen vara en valuelist med två kolumner vilket den första är dåld och innehåller frågans namn. Andrare kolumnen är den som visas. I den kan det t.ex. stå "Sortera efter förnamn"<BR>
<BR>
Då kan du använda följande kod:
<code>
Private Sub Combo2_AfterUpdate()
If Len(Combo2.Value) > 0 Then
Combo0.RowSource = Combo2.Value
Else
Combo0.RowSource = "qryComboKunder"
End If
End Sub
</code>
Annars kan du skapa sql satsen i kod:
<code>
Private Sub Combo2_AfterUpdate()
Dim strSQL As String
strSQL = "SELECT Column1, Column2, Column3, Column4, Column5 FROM TabellNamn"
If Len(Combo2.Value) Then
strSQL = "ORDER BY " & Combo2.Value
End If
If Combo0.RowSource <> strSQL Then
Combo0.RowSource = strSQL
End If
End Sub
</code>
Vilket jag tycker gör uppdatering jobbigare om man skulle förändra tabellen. Sv: Sortera fält i kombinationsruta
Jag har testat ditt första alternativ. Det sorterar mycket riktigt men om jag väljer att sortera på fält nr.2 och sedan tittar i den andra comboboxen så har det fältet flyttat till plats nr.1 där fält nr.1 låg innan. Dessutom syns nu bara fält nr.2.
Vad jag än väljer att sortera på så flyttar det sig till plats nr.1 och de andra platserna är tomma.
Har jag gjort något fel? Fel på frågorna kanske?
/Lars LantzSv: Sortera fält i kombinationsruta
Jag måste ha med alla fälten i alla frågorna med den skillnaden att att sorterar olika.
/Lars Lantz