Impossibile eseguire il codice



  • Impossibile eseguire il codice
    di John (utente non iscritto) data: 01/02/2017 11:58:20

    Salve
    Ho scritto questo codice in VBA ma non me lo esegue. Mi dà un errore del tipo "impossibile eseguire il codice in modalità interruzione".
    Vorrei attivare una macro di copy di una cella (F19) e paste in un'altra cella (F22) finchè il valore di un'altra cella (H22) converge a zero. Mi pare che si debba usare il ciclo while.
    Il codice è corretto? Se qualcuno cortesemente mi può aiutare....
    Grazie!!
     
    Sub Macro5()
    '
    ' Macro5 Macro
    '
    While Range("H22") <> 0
    '
        Range("F19").Select
        Selection.Copy
        Range("F22").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
            
    Wend
    
    Application.CutCopyMode = False
        
    End Sub
    



  • di alfrimpa data: 01/02/2017 13:39:46

    Ciao John

    Nell'editor VBA vai sul menù Esegui e scegli Ripristina ed esegui La macro.

    Alfredo





  • di Albatros54 data: 01/02/2017 15:01:31

    Il codice gira, se teniamo il valore della cella(h22) fisso, secondo me , il codice non gira, perche il valore della cella di riferimento varia a runtime.
    ciao
    albatros54





  • di John (utente non iscritto) data: 01/02/2017 15:26:14

    @Alfredo. Grazie per la risposta, ma mi da errore anche con la tua procedura.
    @Albatross. Grazie per la risposta. Ma cosa intendi per fisso? Scusami sono un neofita di VBA...



  • di Albatros54 data: 01/02/2017 15:33:48

    un numero che non varia.
    Sicuramente il numero nella cella che tende a zero varia durante la macro, o sbaglio?






  • di John (utente non iscritto) data: 01/02/2017 15:45:16

    Sì il numero varia perchè è una differenza fra una costante ed il valore di una cella....
    Scusami per il disturbo ma in pratica vorrei attivare una ripetizione della macro copy (F19) e paste-special (in F22) finchè questa cella (H22) va a zero. Questa cella (H22) varia ogni volta che varia la cella dove la macro fa il paste (F22) ma non è direttamente linkata ad essa.
    Per questa operazione è secondo te il codice corretto?
    Grazie mille



  • di Albatros54 data: 01/02/2017 15:49:43

    prova ad allegare un file, senza dati sensibili.
    albatros54





  • di John (utente non iscritto) data: 01/02/2017 16:36:40

    @Albatross54: ti ho allegato un file dove spero di essere stato sufficientemente chiaro.
    Grazie mille comunque!!



  • di alfrimpa data: 01/02/2017 17:01:08

    Ho provato la macro e funziona ma va in loop infinito.

    Alfredo





  • di Albatros54 data: 01/02/2017 18:38:37

    @ John: Non capisco come la cella che deve tendere a zero possa variare, dato che la differenza è costante, spiegami





  • di John (utente non iscritto) data: 01/02/2017 18:46:02

    No scusami ma mi sono spiegato male io. La cella varia, non è costante, come puoi vedere dal file allegato.



  • di Albatros54 data: 01/02/2017 18:55:15

    ma quando il valore delle cella G14 è uguale a 13,e i valori delle celle "E11" e "D14" hanno come valore 49, il valore della cella che deve tendere a zero rimane costante, dal tuo file, quindi va in loop infinito, prova
    albatros54





  • di John (utente non iscritto) data: 02/02/2017 19:24:27

    Sì @Albatros grazie mille, me ne sono accorto purtroppo. Ho corretto un piccolo errore nella formula del foglio excel ma comunque va sempre in loop infinito.
    Suggerimenti per evitare il loop infinito?
    Grazie
    Ciao



  • di patel data: 05/02/2017 11:45:42

    se hai corretto l'errore riallega il file