next senza for



  • next senza for
    di Mauro (utente non iscritto) data: 17/05/2013 11:08:24

    Ciao a tutti, il codice sotto riportato mi da errore di compilazione Next senza For quando il For c'é
    perché
    Grazie Mauro

     
    Sub prova()
    For a = 2 To 35
    If Foglio3.Cells(a, 2) <> Foglio2.Cells(3, 2).Value Then
    Foglio3.Rows("3:3").Insert Shift:=xlDown
        Range("A2").Select
        Sheets("Dati").Select
        Foglio3.Cells(3, 1).Value = Foglio2.Cells(2, 2).Value
        Foglio3.Cells(3, 2).Value = Foglio2.Cells(3, 2).Value
        Foglio3.Cells(3, 3).Value = Foglio2.Cells(4, 2).Value
        Foglio3.Cells(3, 4).Value = Foglio2.Cells(5, 2).Value
        Foglio3.Cells(3, 5).Value = Foglio2.Cells(6, 2).Value
        Foglio3.Cells(3, 6).Value = Foglio2.Cells(7, 2).Value
        Foglio3.Activate
        [G3] = [C3 * E3]
        [H3] = [C3 * F3]
        [I3] = [G3 + H3]
        [J3] = [C3 * 2.5]
        [b3] = WorksheetFunction.Proper([b3])
        [B2].CurrentRegion.Sort Key1:=[B1], order1:=xlAscending, Header:=xlYes
        Foglio2.Activate
        Range("B2:B8").ClearContents
        If Foglio3.Cells(a, 2) = Foglio2.Cells(3, 2).Value Then
            Foglio3.Cells(a, 4).Value = Foglio3.Cells(a, 4) + Foglio2.Cells(5, 2).Value
        End If
    Next a
    End Sub



  • di Textomb data: 17/05/2013 11:22:59

    Il For c'è.
    ma devi controllare l'End if.
    ne hai messo solo uno.
    Manca l'altro...



  • next senza for
    di Mauro (utente non iscritto) data: 17/05/2013 11:59:03

    Hai ragione, grazie, ho provato e non mi da più errore, ho riscontrato pero che per tutto il ciclo 'a' mi inserisce degli 0 senza motivo nelle colonne. non capisco il perchè.
    grazie mauro



  • di Vecchio Frac data: 17/05/2013 12:04:39

    Questa è un'altra questione ^_^
    Senza motivo? è il programmatore che comanda, non la macchina :)
    Se Excel mette zeri dove non dovrebbe, ripercorri il codice passo a passo.





  • di totygno71 data: 17/05/2013 12:10:33

    cosa vorresti ottenere dal codice?


  • next senza for
    di Mauro (utente non iscritto) data: 17/05/2013 13:17:10

    dal codice io vorrei ottenere:
    se il valore è diverso (If Foglio3.Cells(a, 2) <> Foglio2.Cells(3, 2).Value Then)
    mi inserisce i dati
    mentre se è uguale mi va ad aggiornare i dati (Foglio3.Cells(a, 4).Value = Foglio3.Cells(a, 4) + Foglio2.Cells(5, 2).Value)



  • di totygno71 data: 17/05/2013 15:11:27

    concordo con VF
    Ripercorrendo passo a passo capisci perchè mette zero...


  • next senza for
    di Mauro (utente non iscritto) data: 17/05/2013 15:17:53

    ok ci provo, è da un po ci sto dietro
    grazie
    Mauro