l’altro post, ha come oggetto, delle colonne e la macro che chiedo di poter modificare ha come oggetto la selezione.
Questa macro, modificando solo lFor è super utilissima e la uso per creare tabelle ognuna con diverse indicazioni.
- Codice: Seleziona tutto
Sub DemoSel()
Dim Selector As String, lFor As String
'
lFor = "_gr2_c-18" '<<< La stringa "Chiave" da cercare
For I = 2 To Cells(Rows.Count, "B").End(xlUp).Row
If InStr(1, Cells(I, "B").Value, lFor, vbTextCompare) > 0 Then
Selector = Selector & "," & Cells(I, "B").Address
End If
Next I
If Selector = "" Then Exit Sub 'se non trova lFor va in errore!
Range(Mid(Selector, 2)).Select
End Sub
Questa macro lavora su stringhe tipo: BA_Gr2_C-01 - 012 terno Roma oppure BA_Gr2_C-01 - 012 terno (20) Roma
Ricordo che le stringhe hanno zone separate autonome che possono variare:
zona ruota iniziale(BA), zona gruppi (Gr2), zona cinquine (C-01) …. fino alla zona Ruota finale (Roma).
Di conseguenza 11x3x18x157x4x11=4.103.352 sono le possibili combinazioni che le stringhe hanno.
lFor_1 = (con una sola chiave) … Posso selezionare tutta la stringa scrivendo solo una parte BA oppure C-01 oppure Roma
lFor_2 = (con due chiavi) … Posso selezionare tutta la stringa scrivendo due parti BA + C-01 oppure BA + Bari
lFor_3 = (con tre chiavi) … Posso selezionare tutta la stringa scrivendo tre parti BA+C-01+Roma.
Naturalmente si sceglie una alla volta quale usare e le altre due si commentano (‘).
Aggiungo che le chiavi di ricerca sono tutte sulla stessa stringa ovviamente.
Quindi ti chiedo, se possibile, di modificare la macro che abbia un lFor “esteso” come descritto
sopra (da 1 a 3) e, se possibile, anche oltre.
Questa macro la uso moltissimo anche se ho notato un piccolo neo nella macro, indipendentemente
dalle righe se sono 50 o 25.000, non riesce a selezionare più di 39 stringhe (raramente fino a 42)
e, superato questo limite, va in errore evidenziando di giallo >>Range(Mid(Selector, 2)).Select << .
Ricapitolando, se possibile, modificare la macro che abbia un lFor “esteso” e che aumenti il numero delle
stringhe selezionabili.
In alternativa una semplicissima macro con pochissimi passaggi:
1a) Scrivere in lFor cosa cercare (con maggior numero di campi possibili)
2b) Copiare dalla colonna B e incollare in un’altra colonna ad esempio la D
3c) Cancellare dalla colonna B le stringhe appena copiate.
In allegato un file con un solo foglio “Conta” per eventuali prove della macro.
Ringraziandoti mille e mille volte per il tuo aiuto cordialmente ikwae
http://www.filedropper.com/3aumentarelforrete
******************************************
Lo scopo di tutto questo è di catalogare contando le stringhe che abbiano campi diversi per
avere il numero della somma da scriverlo in una specifica cella di ogni tabella dedicata.
Quindi non serve una sola macro che faccia tutto ma, decine e oltre, per ogni specifica tabella.
Ad ogni estrazione, specifiche macro di ogni tabella, registrano le variazioni e, altre macro
“intelligenti”, registrano le frequenze delle variazioni di quella determinata tabella.
Con un esempio pratico e, riferito alla tabella delle cinquine, dico che la cinquina nr.6 della
ruota di Genova (è la più “attiva”) crea terni sulla ruota di Palermo.
Sapere la frequenza ossia ogni quante estrazione viene vinto il terno, conferma
il classico detto “ho fatto un terno al lotto” … non c’è altro da dire!