Trova e sostituisci valore



  • Trova e sostituisci valore
    di Nic82 data: 17/05/2010

    Ciao a tutti, visto che il mio appello è rimasto inascoltato ci riprovo: devo cercare e sostituire valori, con il metodo find.
    con le due macro sotto, una incastonata nell'altra, aggiungo man mano dei with...end with, ed ogni volta che ne aggiungo uno lancio la macro. il problema è che giustamente, dopo aver lanciato la macro una prima volta, non ci sono più celle che contengono il valore "mamma", quindi la macro si arresta e mi da messaggio di errore? come faccio ad ovviare a questo inconveniente???
    -vedete sotto dove spiego l'andamento della macro.

    grazie

     
    Sub sostituzione()
    On Error Resume Next
    'se lo metto la macro non si blocca, però non funziona neanche l'ultima istruzione With della sub Sostituzione1. Cioè la macro gira ma non mi sostituisce i valori secondo le istruzioni dell'ultimo with.
    
    For Each c In Range([B2], [C2].End(xlDown))
    Sostituzione1
    Next
    
    End Sub
    
    
    Sub Sostituzione1()
    
    With Range([B2], [C2].End(xlDown))
    .Find("PAD16 PT").Select
    Selection.Value = "Pronto Soccorso"
    End With
    
    With Range([B2], [C2].End(xlDown))
    .Find("PAD16 P1").Select
    Selection.Value = "Medicina d'urgenza"
    End With
    
    With Range([B2], [C2].End(xlDown))
    .Find("PAD25 P2").Select
    Selection.Value = "Chirurgia d'urgenza"
    End With
    
    'aggiungo in un secondo momento questa nuova parte
    'dopo aver già lanciato la macro una prima volta
    'che conteneva solo i 3 With precedenti
    
    With Range([B2], [C2].End(xlDown))
    .Find("PAD5 P1").Select
    Selection.Value = "Amb Endsc + Rep Chir maxillo/lastica + Rep Orl"
    End With
    
    End Sub