Avatar billede -anders- Juniormester
17. april 2005 - 19:45 Der er 17 kommentarer og
1 løsning

Dynamisk udvalg af data til listvivew (activex-kontrol)

Hej Eksperter
Jeg har fra makeiteasy.dk downloadet det eks. hvor man kan vælge data dynamisk til en rapport via chekbokse på et treewiew, fantastisk velfungerende, men spørgsmålet er om det er muligt at benytte samme metode når der er tale om et listview. Jeg forstiller mig at man via afkrydsning på listviewet listitem for listitem hakker af, når man så klikker på en knap på formen skal et andet listview vise de data de poster der svare til dem man har "hakket af" i det andet listview. Nedenstående kode virker på et enkelt selected item uden checkbokse, er dette muligt:

Kode:
Private sItem As String

Private Sub cmd_ok_Click()
'Her tømmes listen for data,før nye data loades'
Form_frmoversigt.lstobjekt.ListItems.Clear
'Variabler til databaseforbindelse'
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim itmX As ListItem
Dim sSQL As String
Set rs = New ADODB.Recordset
'Her køres udtrækket'
sSQL = "Select * From tbldata Where [Titel] = '" & sItem & "'"
With rs
'Forbindelse til datakilde oprettes'
Set .ActiveConnection = CurrentProject.Connection
'Poster hentes fra den angivne tabel/forespørgsel (variablen sSQL)'
.Open sSQL, , , adLockOptimistic
'Recordset løbes igennem til sidste post'
Do Until .EOF
'Data tilføjes i første kolonne, altså kolonne 0, denne kolonne indeholde titel'
Set itmX = Form_frmoversigt.lstobjekt.ListItems.Add(, , rs!Titel, 1, 1)
itmX.SubItems(1) = rs!Beskrivelse
itmX.SubItems(2) = rs!Kunster
itmX.SubItems(3) = rs!Producent
itmX.SubItems(4) = rs!Format
itmX.SubItems(5) = rs!Version
itmX.SubItems(6) = rs!MidifilTitelID 'skjult kolonne'
.MoveNext
Loop
End With
'Recordset lukkes'
rs.Close
End Sub
Avatar billede terry Ekspert
17. april 2005 - 20:35 #1
Hi Anders
Havent used the list or treeview much at all. Is it possible to have a checkbox on a listview? If it is them it shouldnt be too difficult to use the code (modified for a listview) which Thomas uses in the cmdUdskriv_Click event.
Avatar billede terry Ekspert
17. april 2005 - 20:39 #2
Thomas's code loops through the selected records building up the filter for the report. This is just the same as the WHERE part for an SQL statement. So if you had

"Select * From tbldata "

then you would just add

"Select * From tbldata " & "WHERE " & SQLStr
Avatar billede terry Ekspert
17. april 2005 - 20:42 #3
so the SQL would look something like this

"Select * From tbldata WHERE [Titel] in ('a', 'b', 'c'"


You will need to alter this line
SQLStr = SQLStr & Mid(objTree.Nodes(n).Key, 2) & ", "

so that it takes strings not numbers
Avatar billede terry Ekspert
17. april 2005 - 20:42 #4
that wasnt quite correct!

"Select * From tbldata WHERE [Titel] in ('a', 'b', 'c')"
Avatar billede -anders- Juniormester
17. april 2005 - 20:58 #5
Hej terry
tak for indlæggende. jeg har prøvet at benytte koden fra thomas, men kan ikke få det til at virke,det er et eller andet med listcount der driller.Jeg tænkte om jeg kunne sende db, er det noget for dig
Avatar billede terry Ekspert
17. april 2005 - 21:01 #6
send away
eksperten@NOSPAMsanthell.dk
remove NOSPAM
Avatar billede terry Ekspert
17. april 2005 - 21:02 #7
I've just has a paly with alistview and it can also have checkboes at the stat of each row, so it should be possible
Avatar billede -anders- Juniormester
17. april 2005 - 21:02 #8
Okay fem minutter :o)
Avatar billede -anders- Juniormester
17. april 2005 - 21:11 #9
db sendt
Avatar billede terry Ekspert
17. april 2005 - 21:23 #10
received, back ASAP!
Avatar billede terry Ekspert
18. april 2005 - 08:32 #11
Hi Anders
I was wondering why you cant use a treeview in the way that  Thomas does in his example? doesnt this give you the same as what you have at the moment?
Avatar billede -anders- Juniormester
18. april 2005 - 10:06 #12
Hej Terry, jo det kunne såmænd godt være en løsning til udvælgelse af data at benytte treeview i stedet for listview, så hvis dette er en mulighed er det ok. Jeg syntes bare det var mærkeligt at det ikke kunne fungere med et listview, men nu må vi se. Hvis du har et forslag/eks. hvor et treeview virker er det fint nok
Avatar billede -anders- Juniormester
18. april 2005 - 10:07 #13
Det vigtige her er selve designet, jeg syntes at det virker meget brugervenligt at kunne udvælge sine data på denne måde
Avatar billede terry Ekspert
18. april 2005 - 10:11 #14
Hi Anders
I'm VERY sure it is possible using a listview, and I will also try and find a solution. If I cant then I will use the treeview! Hope it isnt anything you want finished ASAP, as I'm rather busy during the day, but I will take a look after work.

mvh
Terry
Avatar billede -anders- Juniormester
18. april 2005 - 10:14 #15
Ok terry,løb nu ikke livet af dig, det haster ikke. Syntes du ikke det er mærkeligt at man har muligheden for at tilføje checkbokse, men ikke kan bruge dem til noget :o). Måske det ville virke i rent vb-miljø ikke alle metoder er tilgængelige for listviewet i access-miljøet
Avatar billede terry Ekspert
18. april 2005 - 10:38 #16
I have find a solution, will send it shortly!
Avatar billede -anders- Juniormester
18. april 2005 - 10:55 #17
Hej terry, så har jeg testet, og det virker perfekt, hvis du lægger et svar er der velfortjente point på vej. Hvis andre læser indlægende i dette spørgsmål er de velkomen til at at få en demo i finer min mailadresse ved at klikke på mit navn
Avatar billede terry Ekspert
18. april 2005 - 11:01 #18
great :o)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester