ho fatto con il registratore (ancora un po lacunosa perchè devo intervenire direttamente) te la metto con tutte le sipegazioni possibili
in modo che riesca a spiegarmi in modo definitivo
- Codice: Seleziona tutto
Sub Macro1()
'
' Macro1 Macro
'questa macro la metto in funzione con un clic mediante bottone sul foglio
Range("AQ4:AR4").Select ' si posiziona in cima dove ci sono i 2 num del primo ambo della lista formata dalla tua macro
'( la penultima macro non l'ultima )
Selection.Copy 'copia l'ambo suddetto.....
Range("AT1").Select ' si posiziona nella cella AT1 denonimata cip
ActiveSheet.Paste ' incolla i due num dell'ambo in AT1:AU1 per sottoporli alla fomula:
'=SE(O(CONTA.SE(I3:Z3;cip)>1;CONTA.SE(I3:Z3;ciop)>1;E(CONTA.SE(I3:Z3;cip)>0;CONTA.SE(I3:Z3;ciop)>0));252-RIF.RIGA(3:3);"")
'questa formunla essendo ripetuta da AZ3:AZ252 mi farà vedere in quale delle 250 è presente l'ambo suddetto nella sua forma
'allargata cioè es: dell'ambo 7 e 22 mi scriverà ilnumero di riga (252-RIF.RIGA(3:3);"")sia che esce 7 e 22 o 7 e 7 o 22 e 22
'quindi avrò più uscite nella colonna AZ3:AZ252 , nella cella("AZ1")ho la formula MIN AZ3:AZ252 che ho formattato
'in sfondo rosso se il num min che trova è sup a 100
Application.CutCopyMode = False
If Range("AZ1") < 101 Then 'se trova in ("AZ1")un numero + piccolo di 101...
Range("AQ4:AS4").Select 'si trasferisce sull'ambo che non ha i requisiti e elimina
Selection.Delete Shift:=xlUp 'la selez e mi mette in 1^ posizione l'ambo successivo fino a quando
Else: Exit Sub 'trova un numero super a 100 al che lo taglio e lo metto in un elenco che poi sarà quello desiderato
End If
End Sub