| | Post: 36 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
17/07/2016 19:02 | |
Trovare gli stessi numeri (se ci sono)in un intervallo di righe Buona Domenica a tutti. Allego il file ricerca.xls. Il foglio come vedete è composto da 18 righe, ogni riga è composta da 8 numeri. Come esempio ho evidenziato in giallo i tre ambi uguali per ogni riga ,in verde i tre ambi uguali per ogni riga ,in rosso i due ambi uguali che ci sono nel foglio .Vorrei che se ci sono ambi terni quaterne cinquine identiche vengono riportate nel foglio2 in automatico con macro con il numero di volte .HO fatto io in manuale il foglio2 guardatelo .Grazie anticipatamente Matteo. [Modificato da gattodimarmo1980 19/07/2016 18:31] |
|
| | Post: 36 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
18/07/2016 18:11 | |
|
| | Post: 37 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
18/07/2016 18:13 | |
|
| | Post: 38 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
18/07/2016 18:26 | |
Buongiorno a tutti i membri del forum.Come vedete nella foto che ho caricato ho sottolineato con i colori gli ambi uguali presenti dalla riga 1 alla riga 18.Arriviamo al dunque.L ambo colorato in arancione è l ambo 84 43.Ora devo colorare l ambo 43 69 in riga 1 e in riga 6;ma se per il 43 ho usato l arancione adesso come faccio a colorare questo ambo?In pratica devo riportare nel foglio 2 gli ambi terni quaterne uguali ...... |
| | Post: 2.391 | Registrato il: 03/04/2013
| Utente Veteran | Excel 2000 - 2013 | | OFFLINE | |
|
24/07/2016 07:48 | |
Buona giornata, Gattodimarmo;
leggo solo ora, e, cerco di risponderti alla Tua Richiesta.
Nel file in allegato, ho modificato la struttura del Foglio di lavoro "Foglio2" dedicando una Cella ad ogni numero da valutare.
Non ho modificato i colori di fondo delle celle in Foglio di lavoro "Foglio1"; anche se Excel 2003 gestisce solo tre serie di numeri, potresti provare con Formattazione condizionale.
Option Explicit
Sub Analizza()
Application.ScreenUpdating = False
Dim Rcr As Byte, x As Byte, y As Byte, z As Byte, k As Byte
Dim Vlr1 As Byte, Vlr2 As Byte
Dim Cnt() As Byte
Dim Mbb As Long
Const Rgg As Byte = 18
Const Cln As Byte = 8
With Worksheets("Foglio2")
.Select
Mbb = .Range("B" & .Rows.Count).End(xlUp).Row
Range(Cells(2, 1), Cells(Mbb, 1)).ClearContents
ReDim Cnt(Mbb + 10)
Sheets("Foglio1").Select
For x = 2 To Mbb
Vlr1 = .Cells(x, 2)
Vlr2 = .Cells(x, 3)
For y = 1 To Rgg
For z = 1 To Cln
If Cells(y, z) = Vlr1 Then
For k = 1 To Cln
If Cells(y, k) = Vlr2 Then
Cnt(x - 1) = Cnt(x - 1) + 1
Exit For
End If
Next k
End If
Next z
Next y
Next x
.Select
For x = 2 To Mbb
Cells(x, 1) = Cnt(x - 1)
Next x
End With
Application.ScreenUpdating = True
End Sub
Le Variabili sono strutturate per questa Tua Richiesta; aumentando il numero di "ambi" da valutare dovranno essere definite in modo appropriato ("Integer" o "Long").
A disposizione.
Buon Lavoro e buona serata.
Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 536 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
24/07/2016 10:59 | |
Ciao solo per curiosità, ci sarà pure un'estrazione da confrontare da qualche parte, altrimenti come si fa a sapere (per esempio) che l'ambo è 31 e 15, oppure il terno è 15-21-44 ecc ecc? saluti Domenico
Win 10 - Excel 2016 |
| | Post: 3.506 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Master | 2010 | | OFFLINE |
|
24/07/2016 11:21 | |
ciao Domenico, per come ho capito io, è "tutti contro tutti". Infatti, come dicevo in privato, è molto ricco di combinazioni possibili, in ogni caso, con le formule, neanche mi avvicino.
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 39 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
24/07/2016 12:45 | |
Innanzitutto grazie e complimenti a Giuseppe MN per la macro risolta correttamente.Per Ninai e Domenico;Il gioco del lotto con 90 numeri forma 4005 ambi vedi allegato sviluppo ricorrenze ambo.xls.Ora per vedere solo le mie combinazioni che mi interessano cioè quelle delle 18 righe devo eliminare tutte le ricorrenze non trovate con la macro di Giuseppe (quelle trovate per 0 volte).Per il terno ci pensiamo dopo perchè la cosa e molto ma molto piu complicata.Buona domenica a tutti |
| | Post: 3.507 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Master | 2010 | | OFFLINE |
|
24/07/2016 13:28 | |
Innanzi tutto un saluto a Giuseppe (ci sentiamo raramente) comunque se circoscriviamo la faccenda agli ambi, un approccio con formule mi porta molte più combinazioni di ambi: (122) allego file, con formule e colonne appoggio (risultati in S e T). https://www.dropbox.com/s/mew6nelytub63ev/ambi%20ninai.xls?dl=0
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 537 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
25/07/2016 10:47 | |
@gattodimarmo (ciao) perdona la cocciutaggine, sai come sono quelli anziani...apprendono con ritardo... Si parla di Lotto, quindi ci sono n estrazioni e n giocate. La tua tabella sono le giocate, le estrazioni o che altro ? La mia è semplice curiosità ripeto. Non voglio entrare nei metodi adottati nel gioco (anche perchè non ho mai giocato). Mi piacerebbe semplicemente "capire" come gira il tutto, in quanto fino ad adesso (personalmente) ho capito ben poco grazie saluti [Modificato da dodo47 25/07/2016 13:39] Domenico
Win 10 - Excel 2016 |
| | Post: 2.392 | Registrato il: 03/04/2013
| Utente Veteran | Excel 2000 - 2013 | | OFFLINE | |
|
25/07/2016 16:47 | |
Buon pomeriggio, Domenico. @ dodo47, scrive:
... perdona la cocciutaggine, sai come sono quelli anziani...apprendono con ritardo...
Un caro saluto, Domenico; condivido e, visto che siamo praticamente ... coetanei ... consentimi di parteciparti quello che sono riuscito ad interpretare. Premesso che la mia conoscenza del gioco del lotto, su una scala da 1 a 100 è uguale a 0 (zero), sono partito dal File proposto in #1: - Foglio1 tabella con 18 "Ruote" (Righe), 8 estrazioni (Colonne) - Foglio2 ambi da cercare (Colonna "A"), risultati della ricerca (Colonna "B") Ora, considerando che sono estemamente "pigro" invece di scomporre i valori presenti in Colonna "A" del Foglio2, ho deciso di modificare la struttura del Foglio portando i risultati della ricerca in Colonna "A" e attribuendo ad ogni numero una specifica Cella. Questo in previsione che si debbano cercare combinazioni più ipegnative come: - Terni - Quaterne - Cinquine Fatto ciò ho apllicato il Codice VBA che analizza le estrazioni di ogni "Ruota"; nel momento in cui vengono soddisfatte entrambe le condizioni della ricerca, un contatore viene incrementato di una unità; questi valori vengono memorizzati in una matrice. Alla fine di tutto ciò, i valori contenuti nella matrice vengono riportati, in modo ordinato nelle Celle in Colonna "A" del Foglio2. Ovviamente il codice può risultare più "leggero" evitando di utilizzare la matrice, riportando il risultato della ricerca direttamente nella rispettiva Cella del Foglio2. Questo, probabilmente, avrebbe complicato la comprensione del Codice VBA. Questa considerazione spiega la mia scelta. @ ninai, scrive:
Innanzi tutto un saluto a Giuseppe (ci sentiamo raramente)
Un caro saluto anche a Te; ci sentiamo raramente, in quanto non gradisco sovrappormi a risposte già molto esaustive. Quando accade è per disattenzione; nel qual caso cerco di scusarmi. A disposizione. Buona serata. Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 539 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
25/07/2016 17:05 | |
Ciao caro Giuseppe la struttura del tuo codice è chiarissima. Mi sfugge lo scopo complessivo del lavoro, cioè "terra terra" ho questo e vorrei quest'altro. saluti Domenico
Win 10 - Excel 2016 |
| | Post: 42 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
25/07/2016 21:07 | |
Ciao Dodo, siccome io gioco sempre gli stessi numeri al 10 e lotto e non al lotto volevo solo vedere quelli già usciti nelle 'ultime 18 estrazioni a partire dall 'orario in cui sono disponibile non inserendo pero tutti i 20 numeri ma solo i miei.Vedi foto qua.In modo che se un ambo è appena uscito io non lo gioco.(Dopo può ovviameente può uscire lo stesso).Buona serata a tutti i miei amici. |
| | Post: 549 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
28/07/2016 17:29 | |
Ciao non so se può tornarti utile. L'allegato evidenzia e trascrive gli eventuali ambi, terni ecc a fianco di ogni estrazione. In riga 7, a partiore da col. B, inserisci i numeri da te giocati (max 10) A partitre da B15 in giù (max 20 estrazioni) inserisci le estrazioni (sempre max 20 x riga). Verranno colorati i numeri corrispondenti ed a fianco alle estrazioni, vengono riportate le combinazioni possibili corripondenti alla giocata. E' un vecchio lavoro riadattato e un po' raffazzonato (ma tant'è) e ci sta che ci siano errori (non c'è nessun controllo a parte il numero dei numeri giocati ed il numero delle estrazioni. La function delle combinazioni l'ho presa da qualche parte ma non ricordo dove. In B1 e B2 ci sono due formulette che vengono passate alla macro. Vedi tu saluti EDIT: ho messo formato testo nelle colonne da W in poi perchè qualche combinazione potrebbe essere considerata da excel una data per via del "-" che ho utilizzato come separatore; altrimenti cambialo. Ovviamente in quelle colonne, per via del formato testo eventuali formule non funzionano. In calce al foglio è riportata una parte del triangolo di Tartaglia che mi è servita per controllare se il numero delle combinazioni scritte era corretto: puoi eliminarlo. Ho riallegato il file in quanto quello precedente aveva un errore sul numero delle giocate (con 10 numeri dava errore) C'E' COMUNQUE UN ERRORE. VEDO SE RIESCO A SUPERARLO E POI ALLEGO NUOVAMENTE IL FILE. SORRY
[Modificato da dodo47 28/07/2016 18:36] Domenico
Win 10 - Excel 2016 |
| | Post: 550 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
28/07/2016 19:15 | |
Ciao e scusate riallego il file (spero) corretto. @gattodimarmo tuo msg in chat: ..."non funziona...vedi...." non so come vedere il tuo file manager.. A parte questo, "non funziona" è un po' vago. (Nota: ovviamente tanto i giocati quanto le singole estrazioni devono contenere numeri univoci) saluti [Modificato da dodo47 28/07/2016 19:21] Domenico
Win 10 - Excel 2016 |
| | Post: 43 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
28/07/2016 20:34 | |
Ciao Dodo ,quando lancio la tua macro mi esce questo errore (prima foto) allegata,in debug questo (seconda foto) allegata.Ciao Matteo . |
| | Post: 2.119 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Veteran | Excel 365 | | OFFLINE |
|
28/07/2016 21:39 | |
Al posto del punto ci devono essere i due punti.
Alfredo |
| | Post: 551 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
29/07/2016 10:21 | |
Ciao non so quale file tu abbia scaricato e sicuramente ci sarà quel refuso del "." Come detto quello corretto è al post #15.
(grazie comunque alfredo)
saluti
Edit: come accennato in precedenza, la Sub GenerateCombinations non è farina del mio sacco. Dopo un po' di ricerche sono risalito a chi nel 2012 l'ha prodotta in un post di StackOverflow: "Tony Dallimore". Per corretteza prego chi utilizza tale macro di inserire il nominativo in tale sub.
Grazie
XX [Modificato da dodo47 29/07/2016 17:49] Domenico
Win 10 - Excel 2016 |
| | Post: 44 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
29/07/2016 18:54 | |
Ciao Alfredo ,Ciao Dodo,Ciao Giuseppe mn, Ciao a tutti.Anche cambiando il . con i : la macro non funziona.Vedi prima foto allegata.Per dodo,il file scaricato del post numero 15 da questo errore.Vedi seconda foto allegata. |
| | Post: 553 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
29/07/2016 19:40 | |
Ciao
...la macro non funziona...
La macro funziona benissimo, MA....evidentemente hai una versione di excel inferiore alla 2007 e successive. Pertanto hai a disposizione solo 256 colonne. Quindi correggi XFD34 con IV34. Cosa che avresi potuto fare in autonomia visto che il messaggio di errore è chiaro.
Pertanto devi correggere anche : Range("W15:W34,Y:XFD").ClearContents, con IV.
Con questa correzione però il programma ti darà errore nel caso i numeri estratti uguali a quelli giocati siano superiori a 7. Infatti con 7 numeri presi, le combinazioni sono 120, mentre con 8 numeri presi le combinazioni sarebbero 247. Tale numero sommato alle colonne di utilizzo (dalla A alla W) supera le 256.
E' pur vero che avrei potuto inserire un controllo sul numero delle colonne disponibile e pertanto bloccare il programma in caso di combinazioni vincenti superiore al consentito, ma siccome "sono pigro" non l'ho fatto
Per poter arrivare a 8 numeri presi, potresti variare la macro e scrivere il risultato in un altro foglio a partire dalla colonna A.
Per poter superare il limite, o passi a excel 2007 (o successivi) altrimenti dovresti sviluppare i risultati in verticale, ma è cosa complessa e poco conveniente.
saluti
[Modificato da dodo47 29/07/2016 20:03] Domenico
Win 10 - Excel 2016 |
| | Post: 45 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
29/07/2016 20:34 | |
Ricerca dentro le righe2 (Solo per utenti esperti) .Ripeto solo esperti Buona sera a tutti.Allego foto e macro ricercadentrolerighe2.xls.Le macro all'interno della cartella di lavoro sono stata fatta da Giuseppe Mn per primo,Sal,Ninai e Dodo47.In pratica dopo aver lanciato la macro analizza nel foglio2 vengono riportate le ricorrenze trovate.Nel foglio3 dopo aver lanciato la macro chiamata macrocancellaricorrenzeo bisogna ordinare in modo decrescente le colonne.Ora se torniamo alla tabella del foglio1 vedete che in viola e in azzurrino ho trovato i terni uguali e in giallo il terno e quaterna uguali.Mi serve di riportare con macro nel foglio4,questi terni quaterne uguali in pratica e la continuazione della discussione ricerca dentro le righe .Grazie anticipatamente Matteo. |
| | Post: 554 | Registrato il: 06/04/2013
| Utente Senior | 2010 | | OFFLINE |
|
30/07/2016 09:59 | |
Ciao "personalmente" mi tiro fuori dalla discussione. La mia macro fa quanto ho esposto cioè data una seire di numeri controlla se nelle n estrazioni ci sono corrispondenze e, in caso positivo, elenca le varie combinazioni di ambi, terni, quaterne, ecc ecc. saluti EDIT:
Ricerca dentro le righe2 (Solo per utenti esperti) .Ripeto solo esperti
Non avevo fatto caso a questa scritta che a mio avviso ritengo "offensiva" per tutta la comunità. Naturalmente è un mio personale punto di vista.saluti [Modificato da dodo47 30/07/2016 12:19] Domenico
Win 10 - Excel 2016 |
| | Post: 46 | Registrato il: 03/10/2015
| Città: ALBAREDO PER SAN MARCO | Età: 44 | Utente Junior | 2003 | | OFFLINE |
|
30/07/2016 13:02 | |
L'excel è uno dei progammi piu difficili al mondo.Io non volevo offendere nessuno,volevo solo dire che ci sono discussioni facili e discussioni difficilissime. Io Stavo solo scherzando . Io nel forum ho una stella ,tu hai sette stelle,volevo solo dire che io non riuscirò mai a risolvere discussioni che per te sono facilissime (utente esperto) e per me sono impossibili (utento meno esperto).Comunque chiedo scusa a tutti.Buon sabato Matteo. |
| | Post: 2.394 | Registrato il: 03/04/2013
| Utente Veteran | Excel 2000 - 2013 | | OFFLINE | |
|
02/08/2016 08:02 | |
Buona giornata, a Tutti; assumendo che la frase sia stata scritta in buona fede senza voler offendere nessuno, pur non ritenendomi un "Utente esperto", ho cercato di pensare ad una Procedura in grado di soddisfare la richiesta di @ gattodimarmo. Premetto che, a mio modesto parere la Procedura è proponibile per un numero di combinazioni molto limitato, diciamo una decina, il risultato sarebbe una cosa di questo genere (vedi immagine allegata). Cerco di spiegarmi; la Procedura, più che un Codice VBA è diventata "un lenzuolo", nell'ipotesi proposta procede in questo modo: - Quante volte e in quali righe è presente il numero 55 - Quante volte e in quali righe è presente la combinazione dei numeri 60 e 1 - Quante volte e in quali righe è presente la combinazione dei numeri 60, 1 e 4 Ovviamente si può pensare di analizzare quaterne e cinquine, se mai sarò riuscito a "normalizzare" la procedura, sarà mia premura proporla in Forum; magari nella Richiesta: http://www.freeforumzone.com/d/11295589/Trovare-altre-corrispondenze-per-excel-2003/discussione.aspx Attualmente ho utilizzato: - Select Case Case1, Case2 e Case3 A disposizione. Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 2.395 | Registrato il: 03/04/2013
| Utente Veteran | Excel 2000 - 2013 | | OFFLINE | |
|
04/08/2016 19:05 | |
Buona sera, a Tutti;
ho cercato di rendere la procedura flessibile.
Voglio dire, inserendo in Foglio2 le combinazioni da verificare, dovremmo ottenere:
- Quante volte e in quali righe è presente ogni combinazione
Non è molto professionale, ma, sembra funzionare; mi affido alla Vostra clemenza.
Option Explicit
Sub Analizza_Tutti()
Application.ScreenUpdating = False
Dim Mbb As Long, ClnX As Long, x As Long, Prv As Long
Dim Nrg As Byte, NrX As Byte, Rsl As Byte, y As Byte, z As Byte, k As Byte, PCl As Byte
Dim Vlr() As Byte
Dim ROk()
Dim Cnt()
Const Rgh As Long = 26
Const Cln As Long = 12
ReDim Vlr(Rgh)
ReDim ROk(Rgh, 1)
Sheets("Foglio1").Select
With Worksheets("Foglio2")
.Select
Mbb = .Range("C" & .Rows.Count).End(xlUp).Row
Range(Cells(1, 1), Cells(Mbb, 2)).ClearContents
ReDim Cnt(Mbb + 1, 2)
Sheets("Foglio1").Select
For x = 1 To Mbb
ClnX = .Cells(x, Columns.Count).End(xlToLeft).Column
Rsl = 0
Nrg = 0
PCl = 3
Cnt(x, 2) = ""
Vlr(1) = .Cells(x, PCl)
For y = 1 To Rgh
Cells(y, 1).Select
For z = 1 To Cln
Cells(y, z).Select
If Cells(y, z) = Vlr(1) Then
Nrg = Nrg + 1
ROk(Nrg, 1) = y
Exit For
End If
Next z
Next y
NrX = Nrg
Nrg = 0
PCl = PCl + 1
For Prv = 2 To ClnX - 1
Cnt(x, 2) = ""
Vlr(Prv) = .Cells(x, Prv + 1)
For y = 1 To NrX
For z = 1 To Cln
Cells(ROk(y, 1), z).Select
If Cells(ROk(y, 1), z) = Vlr(Prv) Then
Nrg = Nrg + 1
k = ActiveCell.Row
ROk(Nrg, 1) = k
Cnt(x, 2) = Cnt(x, 2) & k & ", "
Exit For
End If
NrX = Nrg
Next z
Next y
NrX = Nrg
Nrg = 0
Next Prv
Cnt(x, 1) = NrX
If Cnt(x, 1) <> 0 Then
.Cells(x, 1) = Cnt(x, 1)
.Cells(x, 2) = "Righe: " & Left(Cnt(x, 2), Len(Cnt(x, 2)) - 2)
End If
Next x
Cells(1, 1).Select
Fine:
.Select
Columns("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
Cells(1, 1).Select
End Sub
Come promesso la propongo anche in:
http://www.freeforumzone.com/d/11295589/Trovare-altre-corrispondenze-per-excel-2003/discussione.aspx
La procedura è stata sviluppata con Excel 2013; dovrebbe funzionare anche con Excel 2003 e Excel 2007
A disposizione.
Buona serata.
Giuseppe
Edit:
- modifica Versione da Excel 2007 a Excel 2003 e Excel 2007
- la Variabile k può essere eliminata [Modificato da GiuseppeMN 04/08/2016 19:35]
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
|
|