Danmark vil mindske afhængigheden af globale techgiganter, men det kræver mere end politiske formuleringer og strategier, understreger PROSA’s formand Niels Bertelsen.
Du kan lige se hele min sql sætning: --------------------------------------------------------------------------- Set datDB = DBEngine.Workspaces(0).OpenDatabase("I:\CRM\data\data\data.mdb") strSQL = "SELECT DISTINCT varegruppe FROM varegrupper" & "" Set recRecordset = datDB.OpenRecordset(strSQL) Do Until recRecordset.EOF ListVaregruppe.AddItem recRecordset("Varegruppe") & "" recRecordset.MoveNext Loop ---------------------------------------------------------------------------
Interessant diskussion - jeg kendte ikke til SELECT DISTINCT. Nå, jeg ville bare sige, at jeg synes du flotter dig lige rigeligt med dine poients, domino1977 ;o) (5 stk!)
NB: Hvis nu SELECT DISTINCT ikke kommer til at virke, så kunne man jo læse posterne een efter en fra databasen, og kun tilføje dem til ListBox hvis de ikke i forvejen findes i ListBox... En lidt klodset løsning - men det vil helt sikkert virke, og jeg kan da godt give et eksempel hvis det har interesse. Den løsning ville så også kunne tage højde for mellemrum i posterne i databasen, hvis man bruger Trim(databasepost) når man sammenligner (eller LTrim eller RTrim)- det kan SELECT DISTINCT vist ikke tage højde for ;o)
Martin Mouth -> jeg har kun lige fem tilbage... smider flere oveni ipå mandag....!!
Ja det med database, virker ok, MEN det vil ikke komme til at virke pga... at der bliver trukket en list en gang om dage... denne lidt vil Jeg IKKE ind og rydde op i hverdag... og den skal derfor være nem bare at ligge oveni....
Og i dette udtræk er den sådan at hver "kunde" der har sin konto, har flere gange nævnt/brugt en varegruppe der måske hedder "tryk"... det vil sige at hvergang at de har bestilt et varenummer der hører under varegruppen tryk, vil den fremkomme i listen over varegrupper.... og det er ikke særlig smart... den skal kun frem komme 1 gang... og når man så vælger "tryk" i varegruppe listen, så skal alle varenummerne der er i varegruppen "tryk" fremkomme i listen over varenummer!!!
Jeg sendte dig ellers en mail og bad om at se resten af koden. Selve "select distinct..."-delen fungerer fint på din database - derfor ville jeg gerne se den resterende kode med listbox'en.
"SELECT distinct * FROM KVJAN WHERE Konto Like '*" & Kartotek.konto.Text & "*'AND Måned LIKE '*" & Måned.Text & "*'"
Hvor du benytter * omkring dine kriterier. Det er MEGET farligt da konto 100 og konto 1000 begge vil komme med i dit recordset. Jeg har også ændret din kode så den tager korrekt højde for at der ikke er valgt en måned. Og så sendte du det forkerte select til dit spørgsmål. Og hvorfor laver du en ny connection til databasen hver gang du skal bruge den? En global connection ville være mere "økonomisk" (og stien til databasen ville være lettere at rette).
Erstat nederste del af din FORM_LOAD med dette:
Set datDB = DBEngine.Workspaces(0).OpenDatabase(App.Path & "\Data.mdb") If Trim$(Måned.Text) <> "" Then strSQL = "SELECT distinct * FROM KVJAN WHERE Konto Like '" & Kartotek.konto.Text & "'AND Måned LIKE '" & Måned.Text & "'" Else strSQL = "SELECT distinct varegruppe FROM KVJAN WHERE Konto Like '" & Kartotek.konto.Text & "'" End If Set recVaregruppe = datDB.OpenRecordset(strSQL) ListVaregruppe.Clear Do While Not recVaregruppe.EOF ListVaregruppe.AddItem recVaregruppe("varegruppe") & "" recVaregruppe.MoveNext Loop UpdateFelter
Den går istå her: ---------------------------------------------------------------------- Set datDB = DBEngine.Workspaces(0).OpenDatabase(App.Path & "I:\CRM\data\data\data.mdb") ---------------------------------------------------------------------- Og så siger den filnavnet er ugyldigt...
"SELECT distinct * FROM KVJAN WHERE Konto Like '*" & Kartotek.konto.Text & "*'AND Måned LIKE '*" & Måned.Text & "*'"
Hvor du benytter * omkring dine kriterier. Det er MEGET farligt da konto 100 og konto 1000 begge vil komme med i dit recordset. Jeg har også ændret din kode så den tager korrekt højde for at der ikke er valgt en måned. Og så sendte du det forkerte select til dit spørgsmål. Og hvorfor laver du en ny connection til databasen hver gang du skal bruge den? En global connection ville være mere "økonomisk" (og stien til databasen ville være lettere at rette).
Erstat nederste del af din FORM_LOAD med dette:
Set datDB = DBEngine.Workspaces(0).OpenDatabase(App.Path & "\Data.mdb") If Trim$(Måned.Text) <> "" Then strSQL = "SELECT distinct * FROM KVJAN WHERE Konto Like '" & Kartotek.konto.Text & "'AND Måned LIKE '" & Måned.Text & "'" Else strSQL = "SELECT distinct varegruppe FROM KVJAN WHERE Konto Like '" & Kartotek.konto.Text & "'" End If Set recVaregruppe = datDB.OpenRecordset(strSQL) ListVaregruppe.Clear Do While Not recVaregruppe.EOF ListVaregruppe.AddItem recVaregruppe("varegruppe") & "" recVaregruppe.MoveNext Loop UpdateFelter
Synes godt om
Ny brugerNybegynder
Din løsning...
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.