Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

userform di ricerca con più dati uguali EXCEL

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

Re: userform di ricerca con più dati uguali EXCEL

Postdi Anthony47 » 29/03/14 00:02

Nel mio schema avendo il numero di riga a cui appartiene la scelta fatta (cosa che calcoliamo nella Sub CommandButton2_Click) dovrai scrivere una sequenza di istruzioni tipo
Codice: Seleziona tutto
Me.TextBox1.Value=Cells(xxx,3).Value
Me.TextBox2.Value=Cells(xxx,4).Value
'etc etc


Queste ti mettono il contenuto di colonna C in TextBox1, col D in TextBox2; quindi continuare non sarebbe complicato.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Sponsor
 

Re: userform di ricerca con più dati uguali EXCEL

Postdi Zer0Kelvin » 29/03/14 16:40

Ciao.
Per visualizzare più colonne nella lista dei duplicati puoi modificare così
Codice: Seleziona tutto
Public Function Seleziona(rngColl As Collection, Optional nColonne As Long = 1) As Range
Dim i As Long
    Set Seleziona = Nothing
    With Me.ListBox1
      .Clear
      .ColumnCount = 3 '<== Modifica questo valore per il n° di colonne che vuoi visualizzare
      .ColumnWidths = "5 cm; 2 cm; 2 cm" 'queste sono le larghezze delle colonne visualizzate; da modificare secondo esigenza
      For i = 1 To rngColl.Count
          .AddItem rngColl.Item(i) 'rngColl.Item(i) è una cella
          .List(.ListCount - 1, 1) = rngColl.Item(i).Offset(0, -1) 'punta alla cella a destra (o dove preferisci)
          .List(.ListCount - 1, 2) = rngColl.Item(i).Offset(0, -2) 'punta alla seconda cella a destra (o dove preferisci)
      Next i
    End With
    Me.Show
    If Result <> -1 Then Set Seleziona = rngColl.Item(Result)
End Function

tieni presente che i valori in rngColl sono le celle che contengono il valore cercato, quindi puoi utilizzarli per puntare ad altre celle utilizzando la posizione relativa (Offset(riga, colonna) appunto).
Spero sia abbastanza chiaro.
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 305
Iscritto il: 08/04/12 11:23

Re: userform di ricerca con più dati uguali EXCEL

Postdi donbadi » 31/03/14 09:30

bene giornata produttiva fin ora stò seguendo le vostre dritte in parallelo..poi quella che mi piace di più vincerà!! eheheh :lol:
praticamente in quell oche facevo sbagliavo l'offset e mi continuava a riportare in maniera sbsallata i valori partendo dalle riga 1 in poi e non associandola al valore cercato!! bene.......c'è un però... :undecided:
@zer0Kel
funziona e vedo quello che volgio vedere ma se seleziono il primo risultato mi dà errore( Set rng = fSelezione.Seleziona(rColl) )MENTRE SUGLI ALTRI NO..
Codice: Seleziona tutto
Private Sub mCerca(ByVal vValore As Variant)
Dim rng As Range, i As Long, msg As String, primo As String, secondo As String
Dim rColl As Collection
Dim sh As Worksheet
    Set rColl = New Collection
    Set sh = Foglio1
    Set rColl = Cerca(sh.Range("n:n"), vValore)
    If Not rColl Is Nothing Then
        If rColl.Count = 1 Then '1 solo valore trovato
            Set rng = rColl(1)
            fillTextBoxes rng
        Else                    'diversi valori trovati
           Set rng = fSelezione.Seleziona(rColl) '<========QUI SI EVIDENZIA L'ERRORE !!!
            If Not rng Is Nothing Then
                fillTextBoxes rng
            Else
                MsgBox "Nessun contratto selezionato, operazione annullata"
                ClearTextBoxes
            End If
        End If
    Else
        MsgBox "Nessun contratto Associato"
        ClearTextBoxes
    End If
    Set rng = Nothing
    Set rColl = Nothing
    Set sh = Nothing
End Sub

come mai ?
office 2003
donbadi
Utente Junior
 
Post: 24
Iscritto il: 21/02/14 14:49

Re: userform di ricerca con più dati uguali EXCEL

Postdi Zer0Kelvin » 31/03/14 10:47

C'era un errore nel codice, che è stato corretto in un secondo tempo; qui c'è la correzione:
http://www.pc-facile.com/forum/viewtopic.php?f=26&t=101451&sid=357a24be9f7543da6f704429fa8b70d2#p586922
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 305
Iscritto il: 08/04/12 11:23

Re: userform di ricerca con più dati uguali EXCEL

Postdi donbadi » 31/03/14 11:14

...ecco :lol: :lol: :lol: :lol: lo dicevo io che stavo a ingrullì!!!
top ora si che va bene GRAZIEEEEEEE!!!!!
grazie a tutti per il supporto e la pazienza che avete avuto!!! :oops:
office 2003
donbadi
Utente Junior
 
Post: 24
Iscritto il: 21/02/14 14:49

Precedente

Torna a Applicazioni Office Windows


Topic correlati a "userform di ricerca con più dati uguali EXCEL":


Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti