Hardware Upgrade Forum

Hardware Upgrade Forum (https://www.hwupgrade.it/forum/index.php)
-   Programmi e Utility (https://www.hwupgrade.it/forum/forumdisplay.php?f=37)
-   -   Excel: problematiche e soluzioni (https://www.hwupgrade.it/forum/showthread.php?t=2102242)


Latvia 16-08-2014 15:05

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41412428)
@Latvia
Sia la 1° e 2° funzionano (sempre che i colori NON siano dati dalla formattazione condizionale)
>>>1° CONTRO: alla casella campione bisogna aggiungere $$
??? =CCC(A1:C9;C5)

>>>2°non si aggiorna???
=CountCcolor(A1:C9;C5)

Per un codice...., prima devi sapere il colore. Ti posizioni sulla cella e avvia il codice
Sub Quale_colore()
MsgBox ActiveCell.Interior.ColorIndex
End Sub
Dopo avvii il codice per una determinata Area e inserisci il colore =43???
1)Selezioni l'area e avvia il codice
2)Modifichi la terza riga del codice

Sub Quanti()
Dim Cella As Range, C As Long
For Each Cella In Selection ' oppure l'area ex For Each Cella In Range("A1:C10")
If Cella.Interior.ColorIndex = 43 Then
C = C + 1
End If
Next Cella
MsgBox C
End Sub

pemesso che non ho capito quasi nulla....
ma mi pare di aver intuito che con la tua macro devo già dargli il colore., o sbaglio?

per le due formule che ho trovato... la seconda sarebbe la migliore, ma se io aggiungo una cella di x colore, tra le celle da conteggiare. Il risultato non si aggiorna. E nemmeno premendo f9.
Mentre la prima, che non si aggiorna comunque in automatico, per il fatto che i colori non rientrano nelle formule excel, premendo f9 il risultato si modifica.
Il problema della seconda è che nella formula, una volta selezionata la casella colore, devo inserire $$. Se non lo faccio la formula non funziona

Raffaele53 16-08-2014 15:26

>>>con la tua macro devo già dargli il colore
Esatto, il problema che con excel differenti il numero non corrisponde a tutti.
Pertanto per conoscere il colore che Vuoi contare devi avviare Sub quale_colore (posizionandoti su essa)
Un domani saprai con quali colori hai a che fare..... (sempre che i colori NON siano dati dalla formattazione condizionale)

>>> Il risultato non si aggiorna
Premesso che in Excel devi avere un'opzione = Calcolo automatico
Gli $$ a me non risultano con Excel2007

>>>Dopo avvii il codice per una determinata Area e inserisci il colore =43???
Inserisci il colore =43 nel codice, poi selezioni qualsiasi area e lui conta quante celle celle sono colorate nell'area.

Latvia 16-08-2014 15:39

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41412616)
>>>con la tua macro devo già dargli il colore
Esatto, il problema che con excel differenti il numero non corrisponde a tutti.
Pertanto per conoscere il colore che Vuoi contare devi avviare Sub quale_colore (posizionandoti su essa)
Un domani saprai con quali colori hai a che fare..... (sempre che i colori NON siano dati dalla formattazione condizionale)

>>> Il risultato non si aggiorna
Premesso che in Excel devi avere un'opzione = Calcolo automatico
Gli $$ a me non risultano con Excel2007

>>>Dopo avvii il codice per una determinata Area e inserisci il colore =43???
Inserisci il colore =43 nel codice, poi selezioni qualsiasi area e lui conta quante celle celle sono colorate nell'area.

certo certo, ma la mia intenzione era quella di non dovergli dare il colore già sulla macro. Ma selezionare una casella colorata da dare come esempio (la legenda per capirci). Perchè se in futuro volessi cambiare la legenda e poi colorare di conseguenza xy celle, non vorrei dover rifare anche la formula.

Se tu sei pratico... e hai 10 minuti liberi.... (o chiunque si renda disponibile :D )...
io faccio l'allenatore di calcio ed ho creato 2 file, 1 per le presenze e uno per le statistiche delle partite. Sono molto rudimentali viste le mie conoscenze, ma negli anni, dallo 0 iniziale, sono arrivato al livello 1 :p. Ma volevo migliorarle ancora.
Se magari ci dai un'occhiata :D
Se fosse possibile io le caricherei sul forum disponibili a chiunque interessino, ma non so dove metterle.
Ripeto, non sono eccezionali, però sono convinto che anche ad altri possono dare lo spunto, visto quanta fatica ho fatto per trovarle sul web (senza riuscirci)

Raffaele53 16-08-2014 15:52

Nel quesito, non hai ancora detto che versione EXCEL usi?
Allegato??? Quando rispondi c'è pure un tasto "gestisci allegati"

>>>ma la mia intenzione era quella di non dovergli dare il colore già sulla macro
Come faresti, con la leggenda?
Ma la leggenda non assegna colori ad altre celle.

Oppure Vuoi assegnare un colore in base a determinati criteri?
Si può fare, certo che ho bisogno di sapere a quali celle dare un colore.
Però forse capisco male, la domanda iniziale era sapere quanti colori uguali ci sono?

Latvia 16-08-2014 17:30

versione excel: 2007
Lo so che si può allegare un file, ma poi verrebbe perso nei meandri del thread. Se tra 2 mesi qualcuno cercasse su google un file simile non lo troverebbe, comunque posso allegarli ugualmente.

Legenda (una g :p ): semplicemente ho un elenco sul foglio con la descrizione di cosa corrisponde una cella colorata di rosso, una di verde, etc etc. Io darei come celle campione appunto queste celle colorate nella legenda.
TUTTAVIA aggiorno dicendo CHE HO RISOLTO e funziona il primo che ho messo (CCC), forse sbagliavo qualcosa.

Sì, la domanda era sapere quanti colori uguali ci sono. Anche perchè ora ho un'altro quesito, risolto il primo.
Contare quante celle in A1:A100 contengono "X" e sono anche rosse
(se apri il file lo vedi sulle presenze)

ps. non riesco ad allaegare i file... mi dice ''invalid file'' sia in formato excel che rar.
edit: ho capito che sono due formati non ammessi. Ma comunque sono file di 25 e 33kb, compressi. Più del massimo. Come faccio?

Raffaele53 16-08-2014 20:42

Option Explicit
Sub colori_cella_X()
Dim Y As Long, Tot As Long
For Y = 1 To 100
If UCase(Cells(Y, 1)) = "X" And Cells(Y, 1).Interior.ColorIndex = 3 Then
Tot = Tot + 1
End If
Next Y
MsgBox (Tot)
End Sub

Latvia 16-08-2014 22:47

Statistiche campionato e presenze - allenatore di calcio
 
li ho caricati online, scaricabili da questi link
presenze
campionato

.:Moro21:. 17-08-2014 02:27

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41412428)
@Latvia
Sia la 1° e 2° funzionano (sempre che i colori NON siano dati dalla formattazione condizionale)
>>>1° CONTRO: alla casella campione bisogna aggiungere $$
??? =CCC(A1:C9;C5)

>>>2°non si aggiorna???
=CountCcolor(A1:C9;C5)

Per un codice...., prima devi sapere il colore. Ti posizioni sulla cella e avvia il codice
Sub Quale_colore()
MsgBox ActiveCell.Interior.ColorIndex
End Sub
Dopo avvii il codice per una determinata Area e inserisci il colore =43???
1)Selezioni l'area e avvia il codice
2)Modifichi la terza riga del codice

Sub Quanti()
Dim Cella As Range, C As Long
For Each Cella In Selection ' oppure l'area ex For Each Cella In Range("A1:C10")
If Cella.Interior.ColorIndex = 43 Then
C = C + 1
End If
Next Cella
MsgBox C
End Sub

@.:Moro21:.
Premesso che l'elenco sia fatto solo con una persona (non hai messo l'orario di termine notturno)
Ci sto provando...

Ciao Raffaele, grazie per la tua risposta.

Allora l'export adesso l'ho fatto x prova però o esporto per una persona e quindi dal primo agosto alla fine di agosto ho solo le mie ore oppure per tutti i dipendenti ma penso che sarà incasinato e mi da Valentina Luca Carlo in base a che ora uno esca o entra..

Domani provo a fare un export "multiplo"..orario notturno diciamo che nn c'è un limite da calcolare. So solo che dalle 10.30 in poi scatta il notturno, capita che qualcuno esca a mezzanotte, chi all'una, chi alle 11...

In teoria tutti i conteggi degli straordinari li potrebbe gestire il sw del controllo accessi.. solo che per come facciamo i turni noi, perderemo sempre un ora x imostarli.

Raffaele53 17-08-2014 03:14

1 Allegato(i)
@Latvia
Non ho capito cosa dovrei farmene?
L'allegato per farti vedere che tutto funziona.

@.:Moro21:.
>>>non hai messo l'orario di termine notturno
Intendevo dire a quale ora smette il notturno ...6 di mattina (la formula calcola dalle 6:00 alle 22:00)
Per adesso solo formule, metti in:
I2 =STRINGA.ESTRAI(D2;12;8)
J2 =STRINGA.ESTRAI(E2;12;8)
H2 =RESTO(E2-D2;1)
L2 =ASS(K2-M2)
M2 =ASS((RESTO(J2-I2;1)*24-(J2<I2)*(22-6)+MEDIANA(6;22;I2*24)-MEDIANA(6;22;J2*24))/24) Vedi NB
Trascina le formule in basso
L1 =SOMMA(L2:L20)
M1 =SOMMA(M2:M20), formatta queste due celle come ORA e scegli il formatto 37:30:55

Tutto questo per una persona unica, nel caso saranno piu persone dovrai copiare la colonna B in colonna P clicchi su rimuovi duplicati e avrai l'elenco con i nomi unici. Adesso metti in
Q2 =MATR.SOMMA.PRODOTTO((B:B=P2)*(L:L)) --->Totale Diurno
R2 =MATR.SOMMA.PRODOTTO((B:B=P2)*(M:M)) --->Totale Notturno
Trascina le formule in basso e formatta queste due celle come ORA e scegli il formatto 37:30:55

NB: In quella formula vedi tre 6 e tre 22 (in base al Tuo orario modificali)
Ex Hai detto alle 10,30 ossia alle 22,30 (modifica i tre 22 in 22,5)

Ps Le colonne I,J,K,L,M vanno formattate personalizzati HH:MM:SS

Latvia 17-08-2014 08:30

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41414032)
@Latvia
Non ho capito cosa dovrei farmene?
L'allegato per farti vedere che tutto funziona.

ti ringrazio per la macro, ma ne cerco sempre una che non mi obblighi ad inserire il codice colore a priori (se fosse possibile)
L'allegato, come detto, io lo vorrei rendere pubblico, per permettere a tutti di usarlo e/o modificarlo, così da fare un favore a chi cerca qualcosa di simile e sperando qualcuno faccia un piacere a me, migliorandolo. Per questo l'ho caricato

MG 17-08-2014 13:08

salve
ho un foglio excel in cui vi è una colonna (J) con una serie di partite di calcio del tipo:
Slask Wroclaw - Cracovia Krakow
Wanderers - El Tanque S.
Jerv - Kongsvinger
Raufoss Fotball - Valdres
PFK Simurq Zaqatala - Azal PFC Baku
Arminia Bielefeld - SV Sandhausen
Munster - Bayern Monaco
Targu Mures - FC Concordia Chiajna
FC Vaduz - Young Boys

e via così

nella colonna A invece ho un elenco di squadre del tipo
Grotta
Belconnen United
Rain/Lech
Raufoss
Osotsapa
North York Astros
Seattle Reign W
Mjondalen
Mushuc Runa

avrei bisogno di una formula che mi possa indicare se la squadra presente in colonna A è presente o meno nella colonna J. E se la condizione è vera avrei bisogno che la squadra nella colonna J venga risaltata in qualche modo, tipo grassetto o colore...
Spero tanto che mi sia spiegato bene e che ci sia un modo per risolvere il mio problema

Grazie

.:Moro21:. 18-08-2014 08:24

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41414032)
@Latvia
Non ho capito cosa dovrei farmene?
L'allegato per farti vedere che tutto funziona.

@.:Moro21:.
>>>non hai messo l'orario di termine notturno
Intendevo dire a quale ora smette il notturno ...6 di mattina (la formula calcola dalle 6:00 alle 22:00)
Per adesso solo formule, metti in:
I2 =STRINGA.ESTRAI(D2;12;8)
J2 =STRINGA.ESTRAI(E2;12;8)
H2 =RESTO(E2-D2;1)
L2 =ASS(K2-M2)
M2 =ASS((RESTO(J2-I2;1)*24-(J2<I2)*(22-6)+MEDIANA(6;22;I2*24)-MEDIANA(6;22;J2*24))/24) Vedi NB
Trascina le formule in basso
L1 =SOMMA(L2:L20)
M1 =SOMMA(M2:M20), formatta queste due celle come ORA e scegli il formatto 37:30:55

Tutto questo per una persona unica, nel caso saranno piu persone dovrai copiare la colonna B in colonna P clicchi su rimuovi duplicati e avrai l'elenco con i nomi unici. Adesso metti in
Q2 =MATR.SOMMA.PRODOTTO((B:B=P2)*(L:L)) --->Totale Diurno
R2 =MATR.SOMMA.PRODOTTO((B:B=P2)*(M:M)) --->Totale Notturno
Trascina le formule in basso e formatta queste due celle come ORA e scegli il formatto 37:30:55

NB: In quella formula vedi tre 6 e tre 22 (in base al Tuo orario modificali)
Ex Hai detto alle 10,30 ossia alle 22,30 (modifica i tre 22 in 22,5)

Ps Le colonne I,J,K,L,M vanno formattate personalizzati HH:MM:SS

Ciao Raffaele, premetto che ho avuto 5minuti per guardare al foglio. Ho copiato le tue stringhe, ma così come sono nelle colonne L e M mi restituisce solo zeri.

Il turno notturno non ti so dire che ora sia.

Perché forse nn mi ero spiegato bene.. lavoro in una gelateria e quindi gli orari sono flessibili, so a che ora inizio mai a che ora finisco..
Quindi ogni giorno per ogni ragazza ci sarà un turno diverso, come io ogni giorno o faccio mattina dalle 10 alle 6 oppure il gg dopo posso attaccare alle 16.30 piuttosto che alle 17 e posso fare fino a mezzanotte piuttosto che mezzanotte e mezza o anche l'una..

Raffaele53 19-08-2014 21:19

1 Allegato(i)
Io credo che le formule siano corrette.
Ti allego un file con macro, vedi Tu formule/macro

Raffaele53 19-08-2014 21:29

@MG
Impossibile trovare il ***nome*** della squadra e poi colorarla/cambiare carattere.
Ci vuole solo un codice VBA, che però..., bisogna saperlo usare.

Ps ***nome*** si, forse anche doppioni ma solo trovare e non colorare

Raffaele53 19-08-2014 21:30

Aspetta..., Formattazione condizionale
Devo fare delle prove

.:Moro21:. 19-08-2014 22:34

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41422477)
Io credo che le formule siano corrette.
Ti allego un file con macro, vedi Tu formule/macro

sarò stupido, perrò non so come funziona la macro.. appena arriverò a casa mi documento.

ora come ora sono fermo..

usando però come base di partenza il tuo lavoro, io quando ottengo l'export come ti ho girato sopra, posso usare solo una macro per fare le eventuali modifiche o c'è da impazzire??

oltre a me deve riuscire ad usarlo anche mio babbo magari...nel senso, se magari quel giorno che io non ci sono, gli debba dire solo fai click qui e fai click qua e gli fa i conti...

etiernal 20-08-2014 00:17

Buongiorno ragazzi, ho un negozio internet point. E ho necessità di scrivere manualmente per me le quantità di stampe, fotocopie, carte vendite etc.
A tal proposito ho creato una tabella in excel, in cui io sostituisco tutti i giorni i dati. Il problema ora è che ho dei dipendenti, per i quali vorrei qualcosa di più elaborato per me, ma semplice per loro.
Ora mi spiego:
Vorrei fare un foglio in VB che
  • Controlli la data gg/mm e in base a quello disponga i dati nell'apposita cella o (sheet))
  • Ci siano dei pulsanti che effettuino tale lavoro
  • E vorrei che la cosa sia in rete
In pratica ho voglia di mettere una finestra, contenente i pulsanti stampa, fotocopia ecc...E ad ogni click su uno di questi pulsanti chiede la quantità, la conferma e via lo mette in una cartella. Excel. Anche nuova. Magari la elaboro da solo poi. Ma sarebbe preferibile metterla in una già preimpostata.

Alcune cose sono specifiche di Excel ed alcune di VB, ma non sapendo dove chiedere chiedo a voi. Sommi sapienti:ave: .
PS. @MG ora controllo la formattazione condizionale, vedo se ci sono cambiamenti nelle nuove versioni di office.

Raffaele53 20-08-2014 14:35

1 Allegato(i)
@MG
Posso colorare le celle in colonna A se esistono in colonna J (non viceversa, oppure VBA)
Formattazione condizionale/Gestisci regole/nuova regola =SE(VAL.ERRORE(CERCA.VERT("*" & A1 & "*";J:J;1;0));FALSO;VERO) si applica a =$A$1:$A$10

@.:Moro21:.
Rimetto l'allegato (per inserirlo ho dovuto cancellare righe e dati e non andava)
Nel foglio2 ci sono le formule, in foglio1 il codice.
Questo codice, calcola quante righe e utenti ci sono ed elabora.

Nelle formule l'orario erano dati dai numeri 6 e 22 (formula foglio2 in M2)
Nel codice l'orario è determinato da tre righe (se fosse 22,30 e 6,30)
Inizio1 = #6:00:00 AM# 'questa da modificare in Inizio1 = #6:30:00 AM#
Fine1 = #10:00:00 PM# 'questa da modificare in Fine1 = #10:30:00 PM#
ore2 =#2:00:00 AM# 'questa da modificare in ore2 =#1:30:00 AM#

.:Moro21:. 20-08-2014 15:10

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41424512)
@MG
Posso colorare le celle in colonna A se esistono in colonna J (non viceversa, oppure VBA)
Formattazione condizionale/Gestisci regole/nuova regola =SE(VAL.ERRORE(CERCA.VERT("*" & A1 & "*";J:J;1;0));FALSO;VERO) si applica a =$A$1:$A$10

@.:Moro21:.
Rimetto l'allegato (per inserirlo ho dovuto cancellare righe e dati e non andava)
Nel foglio2 ci sono le formule, in foglio1 il codice.
Questo codice, calcola quante righe e utenti ci sono ed elabora.

Nelle formule l'orario erano dati dai numeri 6 e 22 (formula foglio2 in M2)
Nel codice l'orario è determinato da tre righe (se fosse 22,30 e 6,30)
Inizio1 = #6:00:00 AM# 'questa da modificare in Inizio1 = #6:30:00 AM#
Fine1 = #10:00:00 PM# 'questa da modificare in Fine1 = #10:30:00 PM#
ore2 =#2:00:00 AM# 'questa da modificare in ore2 =#1:30:00 AM#

ora come ora, va da dio...

però, invidia perchè ci vorrei capire anch'io ahahha, quindi questa macro ora come ora lavorerebbe correttamente anche se avesse il doppio se non triplo dei dati e 6 nomi diversi??

ma dall'export che ho io, ad attivare la macro, devo fare qualche modifica intermedia?? tipo cancellare o formattare la colonna totale lavorato come hai fatto te nel foglio 1??o funzionerebbe ugualmente anche se presente??

un immenso grazie per avermi aiutato fino a qui!! gelato omaggio se mai passerai dalle zone di ravenna!!

MG 20-08-2014 16:04

Quote:

Originariamente inviato da Raffaele53 (Messaggio 41424512)
@MG
Posso colorare le celle in colonna A se esistono in colonna J (non viceversa, oppure VBA)
Formattazione condizionale/Gestisci regole/nuova regola =SE(VAL.ERRORE(CERCA.VERT("*" & A1 & "*";J:J;1;0));FALSO;VERO) si applica a =$A$1:$A$10

Ciao grazie x aver provato a risolvere il mio problema ma credo che ci siano dei problemi, non funziona.
Quel J:J cosa sta a significare?? e il "*" & A1 & "*"??

Grazie


Tutti gli orari sono GMT +1. Ora sono le: 00:44.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Hardware Upgrade S.r.l.