Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 38
  1. #1

    [vb6]estrarre indice con combobox

    Allora, il mio problema è questo:
    Sto costruendo un programma che si collega ad un db Access.
    Tramite query ottengo i valori per riempire una combobox
    codice:
    Do Until rs.EOF
        Me.cmbBox.AddItem rs("Nome")
        rs.MoveNext
       Loop
    L'utente seleziona uno di questi valori.
    L'indice corrispondente entra a far parte di una seconda query che permette la visualizzazione di uno specifico file immagine.

    Domanda: come faccio a reperire IdNome per inserirlo nella seconda query? (ho fatto già vari tentativi che sono andati a vuoto, ho anche provato con un array)

    Grazie per qualsiasi suggerimento!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non ho capito bene, ma intendi

    cmbBox.ListIndex

    ?

  3. #3
    Non so se è quello che dici tu perché sto imparando: quello che ti posso dire è che tramite la prima query io estraggo due valori:

    Tabella1.IdNome
    Tabella1.Nome

    Il valore Nome deve andare nella combo così l'utente fa la sua scelta. Per fare la seconda query, però mi serve IdNome perché la tabella che interrogo ha

    Tabella2.File
    Tabella2.IdNome

    dove Tabella1.IdNome=Tabella2.IdNome


    E' abbastanza chiaro? Grazie

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ah ... adesso mi e' chiaro ...

    Quindi devi scrivere

    Do Until rs.EOF
    cmbBox.AddItem rs("Nome").Value
    cmbBox.ItemData(cmbBox.NewIndex) = rs("IdNome").Value

    rs.MoveNext
    Loop

    per trovare nell'array ItemData il valore dell'IdNome corrispondente.

  5. #5
    Scusa se insisto ma nella seconda query cosa devo scrivere per pescare dall'Array ItemData il valore di IdNome?

    WHERE IdNome=?


  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Dopo aver modificato il ciclo come ti ho detto, puoi scrivere

    " ... WHERE IdNome=" & CStr(cmbBox.ItemData(cmbBox.ListIndex))

  7. #7
    Mi dà errore:

    Errore di run-time '381'
    Indice della matrice di proprietà non valido

    Cosa significa?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Significa che non hai inserito il codice che ti ho proposto nel ciclo ...

  9. #9
    L'ho ricontrollato: è identico

    codice:
    Private Sub Form_Load()
        cn.Open strConn
        strSQL = "SELECT DISTINCT Nome,IdNome FROM tabella1"
        rs.Open strSQL, cn
        
        
        
        Do Until rs.EOF
        cmbbox.AddItem rs("Nome").Value
        cmbbox.ItemData(cmbbox.NewIndex) = rs("IdNome").Value
    
        rs.MoveNext
        Loop
    
        rs.Close
       
    End Sub
    
    
    
    Private Sub cmdCerca_Click()
    
    strSQL = "SELECT DISTINCT File FROM tabella2 " & _
    " WHERE IdNome='" & CStr(cmbbox.ItemData(cmbbox.ListIndex)) & "'"
    
    rs.Open strSQL, cn
    Do Until rs.EOF
        Text1.AddItem rs("File")
        rs.MoveNext
        Loop
        rs.Close
    
    
    End Sub
    ??

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Che significa

    Text1.AddItem

    ? (AddItem non vale per il Textbox)

    Perche' hai messo le virgolette nella query ? IdNome e' un valore numerico ...


    Anche se quelli indicati non sono causa dell'errore ...

    Quando ti appare l'errore? (subito all'avvio, se fai una ricerca ...)

    Qual e' il contenuto del database ?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.