Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Access 2003: Casella di riepilogo

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Access 2003: Casella di riepilogo

Postdi zymarco » 07/11/13 14:39

Sono nuovo del forum e quindi per prima cosa saluto tutti e ringrazio anticipatamente per l'eventuale aiuto.
Per correttezza vi dico che ho già posto il quesito in altri 2 forum, ma tengo a precisare che questo NON E' ASSOLUTAMENTE dovuto ad un fatto di non rispetto verso di voi, ma per il fatto che io sono alle prime armi (terra terra per capirci) e quindi voglio capire bene come funziona il codice e questo lo posso fare se metto a confronto le varie soluzioni ad un unico problema.
Quindi chedo subito scusa se qualcuno di voi si sentirà offeso per il fatto che mi sono rivolto ad altri forum.
Detto questo
ho un problema con una casella di riepilogo in quanto non riesco a fare un percorso inverso cioè avendo gli ID evidenziare I nomi contenuti nella casella di riepilogo.

Con questo codice prelevo dalla casella di riepilogo a selezione multipla i nomi che mi interessano ed il punteggio relativo al nome e tutto funziona perfettamente.

Codice: Seleziona tutto
For intSelection = 0 To Me.els_nomi.ListCount - 1

        If Me.els_nomi.Selected(intSelection) Then
        .MoveLast
         id = !ID + 1
        .AddNew
        !ID = id
        !Nome = Me.els_nomi.Column(1, intSelection)
        !punteggio = Me.els_nomi.Column(2, intSelection)
        .MoveLast

        End If

        Next intSelection



Ora io avendo gli id vorrei evidenziare I nomi relative quindi dovrei fare la strada inverse ossia scorrere tutti I nominative e confrontare l’ID del nominative caricato nella casella di riepilogo con l’ID salvato in precedenza ma non riesco a farlo.

HO provato con:

Codice: Seleziona tutto

   For i = 0 To Me.els_nomi.ListCount - 1

If Me.els_nomi.Column(1, value) = ID (salvato in precedenza che recupero mediante query)     Then
       Me.els_nomi.Selected(intSelection)=1
        End If

        Next



Ma non funziona.

Come devo scrivere questa parte di codice?

Grazie e scusate per il disturbo.
zymarco
Newbie
 
Post: 2
Iscritto il: 07/11/13 12:35

Sponsor
 

Re: Access 2003: Casella di riepilogo

Postdi zymarco » 07/11/13 23:52

Ho trovato la soluzione finalmente!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Concettualmente era tutto sbagliato. Stavo sbagliando completamente il ragionamento.
Non devo utilizzare due cilci for ma ne basta uno solo.
Dalla query mi ricavo gli ID dei nomi, poi uso

Codice: Seleziona tutto
Set rsnomi = New ADODB.Recordset
rsnomi.CursorLocation = adUseClient
rsnomi.Open query, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
With rsnomi
Dim indice, contattore As Integer
contattore = .RecordCount
For i = 1 To contattore
indice = !ID_nome
        Form_Maschera1.els_nomi.selected(indice) = 1
.MoveNext
indice = 0
Next
End With
rsnomi.Close
Set rsnomi = Nothing


Scusate per il disturbo ed un bravo a me per la mia tenacità a sbattere la testa fino a quando le idee si sono messe a posto.

Condividere le soluzione è la miglio strada per la conoscenza!
zymarco
Newbie
 
Post: 2
Iscritto il: 07/11/13 12:35


Torna a Applicazioni Office Windows


Topic correlati a "Access 2003: Casella di riepilogo":


Chi c’è in linea

Visitano il forum: Anthony47 e 17 ospiti