codice non funzionante



  • codice non funzionante
    di Mauro (utente non iscritto) data: 06/03/2013 11:28:45

    Ho trasferito il codice funzionante in un'altra cartella di lavoro e non da più segno di funzionamento, il foglio di lavoro è identico.
    Non capisco.
    Grazie per l'aiuto
     
    Private Sub Worksheet_Activate()
    
        Dim tot As Double, i As Integer, riga As Integer, r As Integer
        riga = 8
        For i = 1 To 12
            tot = tot + WorksheetFunction.Sum(Range(Cells(riga, 3), Cells(riga + 30, 3)))
            riga = riga + 36
            If i Mod 3 = 0 Then
                On Error Resume Next
                Cells(r + 2, 5) = tot / Cells(r + 2, 7)
                r = r + 1
                tot = 0
            End If
        Next i
    End Sub
    



  • di HarryBosch data: 06/03/2013 12:40:47

    Ciao Mauro
    la routine si attiva nel momento in cui selezioni un determinato foglio, pertanto la macro va inserita nel modulo del foglio interessato all'evento.
    Di conseguenza non va inserita né in un modulo standard né nel ThisWorkbook.


  • codice non funzionante
    di Mauro (utente non iscritto) data: 06/03/2013 12:57:36

    Ciao HarryBosch, infatti ho inserito il codice nel modulo del foglio14, trovo strano che non si attivi.
    Ho provato a trascriverlo ma nulla.
    Nell'altra cartella era nel foglio20



  • di Vecchio Frac data: 06/03/2013 15:27:47

    Per sicurezza:
    tot = tot + WorksheetFunction.Sum(ActiveSheet.Range(Cells(riga, 3), Cells(riga + 30, 3)))
    e
    ActiveSheet.Cells(r + 2, 5) = tot / ActiveSheet.Cells(r + 2, 7)

    Comunque puoi anche commentare On Error e verificare che non si fermi per qualche omtivo.
    In ultima risorsa, esegui il codice passo passo (F8).