Quote:
Originariamente inviato da icecube_HU
Mah.... io semplificherei con:
Codice:
Public Sub Compatta2(ByVal numRighe As Long, sht As Worksheet)
Dim i As Long
With sht
For i = numRighe To 4 Step -1
' se (la colonna descrizione e' uguale a quella della riga precedente) e se(coincidono le celle NID_PI)
If ((.Cells(i, colDescr).Value = .Cells(i - 1, colDescr).Value) And (.Cells(i, colNID).Value = .Cells(i - 1, colNID).Value)) Then
' aggiungo alla cella Scenario della precedente riga ",<cella Scenario della riga attuale>"
.Cells(i - 1, colScenario) = .Cells(i - 1, colScenario) & ":" & .Cells(i, colScenario)
Rows(i).Delete
End If
Next
End With
End Sub
Prova in po'..... Ciao !
N.B.:
Occhio, se dichiari Dim a, b, c, d As Long
solo L'ULTIMA variabile e' Long, le altre vengono implicitamente dichiarate come Variant, con conseguente spreco di memoria e minor velocita'...
Questo in generale, non e' certo il problema nel caso in questione.
|
hai postato il codice esattamente come lo facevo prima...
cmq il tuo consiglio sulla diciharazione dei dati mi č molto utile, non lo sapevo!
cmq fa nulla, ormai mi sono arreso
sei stato gentilisssssssssssimo
byezzzz