Unione di celle risultato



  • Unione di celle risultato
    di Albertino (utente non iscritto) data: 07/06/2010

    Ho una lista1(.xls) formata sempre da 4 colonne(name - etichetta - località - ip) ma righe variabili. ho una lista2 sempre con le stesse colonne(name - etichetta - località - ip) con un numero di righe che può essere diverso da lista1.

    quello che devo fare è quello di creare una lista3 composta questa volta da 5 colonne(name - etichetta - località - ip - delta). in questa lista inderisco tutti i name attraverso il confronto tra la lista1 e la lista2 però inserendo nella colonna delta le seguenti informazioni:
    x: se il name è presente nella lista1 e nella lista2
    e (con cella colorata di verde): se il name sta nella lista2 ma non nella lista1
    u ( con cella colorata di rosso): se il name sta nella lista1 ma non nella lista2.
    ho utilizzato questo codice ma mi sono accorto che mi da degli errori.

    potete aiutarmi a correggerlo o eventualmente ad utilizzarne un'altro ??? grazie....
     
    'copio l'intero contenuto della prima colonna
    x = 1
    Do While Not Foglio1.Cells(x, 1) = ""
        Foglio3.Cells(x, 1) = Foglio1.Cells(x, 1)
        Foglio3.Cells(x, 2) = Foglio1.Cells(x, 2)
        Foglio3.Cells(x, 3) = Foglio1.Cells(x, 3)
        Foglio3.Cells(x, 4) = Foglio1.Cells(x, 4)
        Foglio3.Cells(x, 5) = "U"
    ‘colore rosso al simbolo “U”
    Foglio3. Cells(x, 5).Interior.ColorIndex = 3 
        x = x + 1
    Loop
    
    'Controllo se esiste nella colonna 3.
    'Se esite modifico il valore delta, altrimenti scrivo la nuova riga
    x = 1
    Do While Not Foglio2.Cells(x, 1) = ""
        y = 1
        Esiste = False
        Do While Not Foglio3.Cells(y, 1) = ""
       If Foglio3.Cells(y, 1) = Foglio2.Cells(x, 1) Then
                Foglio3.Cells(x, 5) = "X"
           ' Nessun colore alla cella nel caso di “X”
         Foglio3.Cells(x, 5).Interior.ColorIndex = 0
                
                Esiste = True
                Exit Do
            End If
            y = y + 1
        Loop
        If Esiste = False Then
            Foglio3.Cells(y, 1) = Foglio2.Cells(x, 1)
            Foglio3.Cells(y, 2) = Foglio2.Cells(x, 2)
            Foglio3.Cells(y, 3) = Foglio2.Cells(x, 3)
            Foglio3.Cells(y, 4) = Foglio2.Cells(x, 4)
            Foglio3.Cells(y, 5) = "E"
            'Per colorare la cella di verde 
          Foglio3.Cells(x, 5).Interior.ColorIndex = 4
            
        End If
        x = x + 1
    Loop