| | Post: 352 | Registrato il: 29/09/2003
| Città: ACCIANO | Età: 26 | Utente Senior | 2003/2007 | | OFFLINE | |
|
22/04/2017 12:10 | |
Buongiorno a tutti,
sto facendo innumerevoli tentativi e prove ma non ne vengo a campo
in allegato il foglio di lavoro
l'intenzione è quella che selezionando il mese e l'anno nelle due combobox in alto e premendo il tasto filtra
mi copiasse nel foglio stampa solo i nominativi univoci n base al filtro mese e anno e mi contasse affianco ad ogni nome il numero di pasti o cene
Ovviamente ringrazio per quasliasi contributo Excel 2007 - 2010 |
|
| | Post: 1.042 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
22/04/2017 12:33 | |
spezza il problema in 2:
primo problema:
krashone, 4/22/2017 12:10 PM:
l'intenzione è quella che selezionando il mese e l'anno nelle due combobox in alto e premendo il tasto filtra
mi copiasse nel foglio stampa solo i nominativi univoci n base al filtro mese e anno
per creare il criterio data su un filtro,
per quello che ne so, vba ha bisogno della data in formato inglese.
per ciò, concatena in momodo adeguato:
mese & giorno & anno
lascio a te il secondo problema:
krashone, 4/22/2017 12:10 PM:
mi contasse affianco ad ogni nome il numero di pasti o cene
ciao
Frank
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 352 | Registrato il: 29/09/2003
| Città: ACCIANO | Età: 26 | Utente Senior | 2003/2007 | | OFFLINE | |
|
22/04/2017 12:57 | |
Grazie per i consigli
per evitare probelmi con le date ho creato altre due colonne
nel registro dove appare il mese in numero e l'anno
e per il filtro non ho probelmi particolari
è il conta se una volta filtrato che non ottengo risultati Excel 2007 - 2010 |
| | Post: 1.043 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
22/04/2017 13:07 | |
modifica Sheets("Stampa").Cells(i, 6) = Application.WorksheetFunction.CountIf(Sheets("Registro").Range("E6:UR"), "X") con Sheets("Stampa").Cells(i, 6) = Application.WorksheetFunction.CountIf(Sheets("Registro").Range("E6: E"&UR), "X") Ciao [Modificato da tanimon 22/04/2017 13:10]
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 353 | Registrato il: 29/09/2003
| Città: ACCIANO | Età: 26 | Utente Senior | 2003/2007 | | OFFLINE | |
|
22/04/2017 13:27 | |
Ancora non è perfetto
esce fuori per antrambi nominativi il valore 2 Excel 2007 - 2010 |
| | Post: 1.044 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
22/04/2017 13:40 | |
prova a studiarti ed ad utilizzare la funzione COUNTIFS (CONTA.PIU'.SE)
al posto di CountIf (CONTA.SE)
Dire solamente che il risultato ottenuto non è ancora perfetto,
non è particolarmente gradevole per chi ti sta dando una mano........
Ricordo anche bene che in passato, questa cosa ti è già stata fatta notare anche da altri utenti.
Sono certo che ce la puoi fare
Ciao
Frank
[Modificato da tanimon 22/04/2017 13:40]
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 1.045 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
22/04/2017 14:01 | |
potresti anche:
creare una variabile contatore
un If .... Then a due condizioni con un AND
all'interno di un
FOR ..... NEXT sulla colonna "E", da "E6" to UR
Fare la stessa cosa per la colonna "F"
Ciao
Frank
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
| | Post: 354 | Registrato il: 29/09/2003
| Città: ACCIANO | Età: 26 | Utente Senior | 2003/2007 | | OFFLINE | |
|
22/04/2017 19:07 | |
capisco
mi scuso per l'uso delle parole che assolutamente non devono essere fraintese, prima di postare aiuti provo e riprovo varie combinazioni
cerco sul web etc... Excel 2007 - 2010 |
| | Post: 355 | Registrato il: 29/09/2003
| Città: ACCIANO | Età: 26 | Utente Senior | 2003/2007 | | OFFLINE | |
|
22/04/2017 20:42 | |
Grazie a Frank che mi ha fatto conoscere Application.WorksheetFunction.CountIfs
ho modificato il codice come segue e pare che adesso funzioni
UR1 = Sheets("Stampa").Range("B11").End(xlDown).Row
For i = 11 To UR1
DoEvents
Nom = Sheets("Stampa").Cells(i, 2)
Sheets("Stampa").Cells(i, 6) = Application.WorksheetFunction.CountIfs(Sheets("Registro").Range("E6:E" & UR), "X", Sheets("Registro").Range("A6:A" & UR), Nom)
Next i
Sicuramente per voi il codice è brutto ma per le mie capacità mi devo accontentare, proseguo con il lavoro e verifico se avrò bisogno ancora del vostro indispensabile aiuto
per adesso grazie 1000 Excel 2007 - 2010 |
| | Post: 1.046 | Registrato il: 27/06/2011
| Utente Veteran | excel 2007 | | OFFLINE |
|
23/04/2017 13:54 | |
Se vuoi imparare sii curioso come sei e non cercare risposte da chi le
ha già'.
Fatti domande e prima di scrivere un codice in vba,
scrivilo in italiano.
Ciao
Frank [Modificato da tanimon 23/04/2017 13:57]
Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
Excel 2007 forse anche 2013 ... 2021 ... 365 e future... |
|
|