errore di runtime 91



  • errore di run-time 91
    di sarafiloraffa (utente non iscritto) data: 18/03/2016 21:53:05

    Salve a tutti,
    ringrazio anticipatamente quanti avranno voglia di aiutarmi. Da poco ho iniziato ad avvicinarmi al mondo delle macro. Devo fare un lavoro che richiede di fare dei test di significatività tra la percentuale di un segmento e quella del totale del campo e tra le medie di un segmento e del totale campione. Ho registrato le macro ma mi da l'errore "Variabile conteggio o variabile del blocco with non impostata". Vorrei chiedere cosa significa l'errore e perché mi compare. Premetto che le macro non le ho scritte io e in passato sono state usate senza dare problemi.
    Riporto le macro. Grazie.
     
    Sub copia_medie()
    '
    ' copia_medie Macro
    '
    
    '
         Selection.Copy
         ActiveCell.Offset(12, 2).Range("A1").Select
         ActiveSheet.Next.Select
         Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
             :=False, Transpose:=False
         ActiveCell.Offset(0, 1).Range("A1").Select
         ActiveSheet.Previous.Select
         Application.CutCopyMode = False
         ActiveCell.Range("A1:AI1").Select
         Application.CutCopyMode = False
         Selection.Copy
         ActiveCell.Offset(3, -2).Range("A1").Select
         ActiveSheet.Next.Select
         Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
             :=False, Transpose:=False
         ActiveCell.Offset(1, -1).Range("A1").Select
         ActiveSheet.Previous.Select
    End Sub
    
    /****************************************************************************************************************************/
    
    
    
    'Significatività tra le medie di un segmento e del totale campione 'con scarto quadratico medio Function SQM_Sign_seg1_T(m1, n1, mt, sqmt)
         z = Abs(m1 - mt) / (sqmt / Sqr(n1))
         If z >= 1.96 Then
             If m1 >= mt Then
                 SQM_Sign_seg1_T = "*"
             Else
                 SQM_Sign_seg1_T = "#"
             End If
         Else
             SQM_Sign_seg1_T = " "
         End If
    End Function
    
    
    
    /****************************************************************************************************************************/
    
    
    
    'Significatività tra le percentuale di un segmento e quella del totale campione Function Sign_pct1_pctT(p1, n1, pt)
         If (p1 = "" Or p1 = 0) And (pt = "" Or pt = 0) Then
             Sign_pct1_pctT = " "
         Else
             If pt = 0 Then
                 pt = 0.1
             End If
             If (p1 / 100 * n1) > 5 And (1 - p1 / 100) * n1 > 5 Then
                 'Grandi campioni: approssimazione alla normale
                 z = Abs(p1 - pt) / (Sqr(pt * (100 - pt) / n1))
                 If z >= 1.96 Then
                     If p1 >= pt Then
                         Sign_pct1_pctT = "*"
                     Else
                         Sign_pct1_pctT = "#"
                     End If
                 Else
                     Sign_pct1_pctT = " "
                 End If
             Else
                 'Piccoli campioni: utilizzo la binomiale
                 inf = (Application.CritBinom(n1, pt / 100, 0.025) - 1) / n1
    * 100
                 sup = (Application.CritBinom(n1, pt / 100, 0.975) + 1) / n1
    * 100
                 If p1 <= inf Or p1 >= sup Then
                     If p1 >= pt Then
                         Sign_pct1_pctT = "*"
                     Else
                         Sign_pct1_pctT = "#"
                     End If
                 Else
                     Sign_pct1_pctT = " "
                 End If
             End If
         End If
    End Function
    



  • di Mohican1989 data: 18/03/2016 22:12:51

    Allega il file su cui lavori, così dovremo costruirne una da zero ed perderemmou N sacco di tempo solo per adattare e inserire i dati dove là macro pensi di prenderli.


  • file allegato
    di sarafiloraffa data: 19/03/2016 14:19:41

    Grazie mille per la risposta immediata. Chiedo scusa se non ho allegato subito il file perché non sapevo bene come funziona essendo nuovo nel forum. Avevo capito che il problema riguarda l'indicazione dei dati ma lavorando da poco su queste cose non mi è ben chiaro come procedere.
    Grazie in anticipo.
    Nota: ho allegato erroneamente il file anche in formato numbers.



  • di Albatros54 data: 19/03/2016 15:39:39

    al file che hai allegato , aggiungi un foglio, forse risolvi il problema