Condizione if



  • Condizione if
    di Ezio59 data: 09/04/2010

    Ciao ragazzi,
    giornalmente estrapolo i dati da un applicativo che mi fornisce la produzione delle agenzie da noi gestite.
    l'applicativo fornisce solo quelle che hanno prodotto risultati me ntre il mio capo vuole tutto l'elenco (63 agenzie)evidenziando in rosso quelle a produzione zero.
    ho cominciato a registrare una macro con le condizioni if then else che almeno in fase di prova funziona egregiamente.
    mi sono fermato perchè molto spesso mi è capitato che la routine fosse troppo lunga. la prima domanda è questa: esiste un modo per conoscere quanta memoria sto usando e quanta me ne rimane?
    seconda domanda:esiste un modo più sbrigativo per evitare 63 e più volte di scrivere le istruzioni?
    terza domanda: esiste un modo per evitare il riferimento specifico ad una cella? (se sbaglio ad incollare l'elenco la macro mi fornirà ovviamente valori fasulli,
    grazie
     
    Sub AGENZIE()
    '
    ' AGENZIE Macro
    '
    
    'Range("A3").Select
        If Range("A3") = ("ANCONA") Then
        Range("A4").Select
        Else
        Selection.EntireRow.Insert
        Range("A3").Select
        ActiveCell.FormulaR1C1 = "ANCONA"
        Range("A3").Select
        With Selection.Interior
            .ColorIndex = 3
            .Pattern = xlSolid
        End With
        Selection.Font.ColorIndex = 2
        Selection.Font.Bold = True
        Range("A4").Select
        End If
        'FINE ANCONA'
     Range("A4").Select
        If Range("A4") = ("ANDRIA") Then
        Range("A5").Select
        Else
        Selection.EntireRow.Insert
        Range("A4").Select
        ActiveCell.FormulaR1C1 = "ANDRIA"
        Range("A4").Select
        With Selection.Interior
            .ColorIndex = 3
            .Pattern = xlSolid
        End With
        Selection.Font.ColorIndex = 2
        Selection.Font.Bold = True
        Range("A5").Select
        End If
         'FINE ANDRIA'
    Range("A5").Select
        If Range("A5") = ("BOLOGNA") Then
        Range("A6").Select
        Else
        Selection.EntireRow.Insert
        Range("A5").Select
        ActiveCell.FormulaR1C1 = "BOLOGNA"
        Range("A5").Select
        With Selection.Interior
            .ColorIndex = 3
            .Pattern = xlSolid
        End With
        Selection.Font.ColorIndex = 2
        Selection.Font.Bold = True
        Range("A6").Select
        End If
         'FINE BOLOGNA'
    



  • di Ricky53 (utente non iscritto) data: 14/04/2010

    Ciao,
    con due cicli for/next ne esci.
    devi avere una tabella della città e la scorri con un primo ciclo for/next,
    il secondo ciclo scorre le righe.
    quando trovi la città operi come ti occorre

    ciao d ricky53