mia ignoranza



  • mia ignoranza
    di Domenico (utente non iscritto) data: 07/03/2015 18:52:05

    Salve - In "Sub BABA" quando nella colonna F31-F45 incontra il valore della cella F21 , lo cancella. In " Sub PROVA" ho inserito For...........Next, ma non da quanto richiesto cioe la cancellazione del valore di F21 nella colonna F31-F45. In " Sub PROVA" cosa ho emesso? Anticipatamente grazie per la collaborazione
    Domenico
     
    Sub BABA()
    
        If Range("F31") = Range("F21") Then
        Range("F31").Select
        Selection.ClearContents
        End If
        If Range("F32") = Range("F21") Then
        Range("F32").Select
        Selection.ClearContents
        End If
        If Range("F33") = Range("F21") Then
        Range("F33").Select
        Selection.ClearContents
        End If
        If Range("F34") = Range("F21") Then
        Range("F34").Select
        Selection.ClearContents
        End If
        If Range("F35") = Range("F21") Then
        Range("F35").Select
        Selection.ClearContents
        End If
        If Range("F36") = Range("F21") Then
        Range("F36").Select
        Selection.ClearContents
        End If
        If Range("F37") = Range("F21") Then
        Range("F37").Select
        Selection.ClearContents
        End If
        If Range("F38") = Range("F21") Then
        Range("F38").Select
        Selection.ClearContents
        End If
        If Range("F39") = Range("F21") Then
        Range("F39").Select
        Selection.ClearContents
        End If
        If Range("F40") = Range("F21") Then
        Range("F40").Select
        Selection.ClearContents
        End If
        If Range("F41") = Range("F21") Then
        Range("F41").Select
        Selection.ClearContents
        End If
        If Range("F42") = Range("F21") Then
        Range("F42").Select
        Selection.ClearContents
        End If
        If Range("F43") = Range("F21") Then
        Range("F43").Select
        Selection.ClearContents
        End If
        If Range("F44") = Range("F21") Then
        Range("F44").Select
        Selection.ClearContents
        End If
        If Range("F45") = Range("F21") Then
        Range("F45").Select
        Selection.ClearContents
        End If
    
    
    Sub PROVA()
    
    Dim I As Integer
    
    For I = 1 To 45
    
        If Range("F30") = Range("F21") Then
        Range("F30").Select
        Selection.ClearContents
        End If
    
    Next I
    
    End Sub



  • di Albatros54 (utente non iscritto) data: 07/03/2015 19:19:03

    modifica con il codice postato
     
    Sub PROVA()
    
    Dim I As Integer
    
    For I = 1 To 45
    
        If Range("F" & I) = Range("F21") Then
        Range("F" & I).Select
        Selection.ClearContents
        End If
    
    Next I
    
    End Sub
    



  • di Albatros54 (utente non iscritto) data: 07/03/2015 19:19:28

    modifica con il codice postato
     
    Sub PROVA()
    
    Dim I As Integer
    
    For I = 1 To 45
    
        If Range("F" & I) = Range("F21") Then
        Range("F" & I).Select
        Selection.ClearContents
        End If
    
    Next I
    
    End Sub
    



  • di Mohican1989 data: 07/03/2015 22:37:42

    I tuo codice non era sbagliato almeno la struttura,ma penso tu non abbia capito il valore e l uso delle variabile. Hai indicato I come variabile e ponendo il valore da 1 a 45. In seguito però non hai inserito questa variabile. In questo modo hai semplicemente detto " se f30 è uguale a f21 allora cancellane il contenuto" e poi gli hai detto di rifare il controllo altre 45 volte ma la cella su cui esegue il controllo sarà sempre f30. Come invece ha postato Albatros inserendo la variabile come parte del Range ovvero "F" & I tu stai dicendo " se FI è uguale a f21 allora cancella il contenuto" dove I ha come primo valore 1, quindi la cella controllata sarà F1. Dopo il primo next la variabile I che prima valeva 1 ora vale 2 e quindi la cella controllata sarà F2 e così via finché non sarà raggiunto il valore massimo dato alla variabile


  • mia ignoranza
    di Domenico (utente non iscritto) data: 08/03/2015 07:45:00

    Infinitamente grazie per la soluzione ad ALBATROS 54 e tanto di cappello a Mohican 1989 per quanto scritto . Domenico



  • di Vecchio Frac data: 08/03/2015 12:01:25

    @Domenico
    Prossima volta prego iniziare una discussione con un titolo più significativo in modo da favore le ricerche future. Dubito che qualcuno possa cercare "ignoranza" per ritrovare questa discussione. Grazie