Buon giorno a tutti ho provato a modificare questa macro ma non ho il risultato che volevo. Se riuscite per favore a vedere l'errore. Secondo me l'errore è che i numeri devono essere nel range A C in ordine crescente. Se i numeri sono in ordine decrescente la macro mi cancella la riga. Allego foglio
Sub Tieninumerocancellariga()
Dim num As Integer
Dim rng As Range
Dim riga As Long
On Error GoTo fine 'esci se non rispondo
num = InputBox("Digitare un numero da 1 a 90")
If Not num >= 1 Or Not num <= 90 Then Exit Sub 'esci se immesso numero non previsto
Application.ScreenUpdating = False
With Worksheets("Foglio1")
Set rng = .Range("A1:C" & .Cells(Rows.Count, 1).End(xlUp).Row) 'rilevo l'area da gestire
For riga = rng.Rows.Count To 1 Step -1 'ciclo tutte le righe
'verifico se c'è il numero nella riga
If Not Application.WorksheetFunction.CountIf(.Range("C" & riga & ":C" & riga), num) > 0 Then
rng.Rows(riga).EntireRow.Delete 'altrimenti elimino l'intera riga
End If
Next riga
End With
Application.ScreenUpdating = True
fine:
End Sub
Buon giorno a tutti ho provato a modificare questa macro ma non ho il risultato che volevo. Se riuscite per favore a vedere l'errore.
[Modificato da gattodimarmo1980 24/08/2019 11:29]