il mio problema è questo:
ho la necessità, tramite dei textbox importare dei dati in celle di in un file Excel, e fin qui ci sono arrivato.
I problemi arrivano quando voglio fare una ricerca nel foglio excel.
Mi spiego meglio.
Ho un elenco di nominativi in un file excel:
colonna 1 = cognome
colonna 2 = nome
colonna 3 = data di nascita
colonna 4 = comune di nascita
colonna 5 = …………….
…….ecc.
La mia esigenza è fare una ricerca di nominativi per poi farli comparire in una listbox, cioè se in una TextBox digito il cognome Pluto, voglio che nella ListBox mi compaia l’elenco di tutti i nominativi col cognome Pluto seguito dal “Nome” e dalla “Data di nascita”. Dopodichè selezionato il nominativo della ListBox tutti i dati contenuti nelle celle della riga excel corrispondente mi vengano visualizzati nelle TextBox che ho utilizzato per l’inserimento.
Spero di esser stato chiaro.
Vi ringrazio anticipatamente
Ecco il codice che uso per esportare i dati sul foglio Excel:
- Codice: Seleziona tutto
Private Sub cmdMemorizza_Click()
Dim temp As Integer
On Error GoTo errore
'imposto la variabile oggetto FoglioExcel con il nome del foglio da leggere
Set FoglioExcel = FileExcel.Worksheets("Anagrafica")
'scrivo il contenuto della textbox nella prima cella vuota della colonna "A"
temp = 2 'parto dalla riga 2
Do
'imposto la variabile oggetto CellaFoglioExcel
Set CellaFoglioExcel = FoglioExcel.Range("A" & temp)
If CellaFoglioExcel = "" Then 'se la cella è vuota
CellaFoglioExcel = txtCognome.Text 'scrivo il contenuto della texbox
Exit Do 'esco dal loop
End If
temp = temp + 1 'proseguo la ricerca nella riga successiva
Loop
FoglioExcel.Range("B" & temp) = txtNome.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("C" & temp) = txtDataNascita.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("D" & temp) = txtComuneNascita.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("E" & temp) = txtCodiceFiscale.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("F" & temp) = txtIndirizzo.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("G" & temp) = txtComuneResidenza.Text 'scrivo il contenuto della texbox
FoglioExcel.Range("H" & temp) = (txtTelefono.Text) 'scrivo il contenuto della texbox
'libero ("scarico") le variabili
Set CellaFoglioExcel = Nothing
Set FoglioExcel = Nothing
Exit Sub
errore:
MsgBox "Errore " & Err.Number & vbCrLf & Err.Description
Set CellaFoglioExcel = Nothing
Set FoglioExcel = Nothing
Form_Unload (False)
End Sub