codice:
    Dim exApp As Excel.Application
    Dim exWb As Excel.Workbook
    Dim exWs As Excel.Worksheet
    Dim numRighe As Integer
    Dim indRiga As Integer
    
    'apre excel
    Set exApp = New Excel.Application
    exApp.Visible = True
    snomefile = App.Path & "\" & snomefile
    'apre il file xls
    strPerc = snomefile
    Set exWb = exApp.Workbooks.Open(strPerc)
    
    'seleziona il foglio 1
    Set exWs = exWb.Worksheets(1)
    
    'conta il numero di righe
    numRighe = exWs.Rows.CurrentRegion.Count
        
    For indRiga = 2 To numRighe
        'leggo il contenuto delle celle
        idContratto = Trim(exWs.Cells(indRiga, "A"))
    next indRiga
Con questa funzioncina mi ciclo le celle di un foglio excel...
funziona tutto perfettamente ma mi da un errore in questa istruzione :
numRighe = exWs.Rows.CurrentRegion.Count
o meglio mi tira fuori tutte le righe del foglio excel anche quelle vuote....
se ho 50 righe riempite lui cmq mi restituisce tutte le righe...
vi lascio immaginare i tempi di loop!!!

C'è un modo per ovviare a questo inconveniente?

Grazie cari