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)


Thoruno 23-12-2012 15:03

Quote:

Originariamente inviato da fabbio84 (Messaggio 38754940)
Thoruno il problema è risolto con le ore che tu hai inserito, ma se metti per esempio un orario che va dalle 21:59 alle 6:00, sulle ore diurne mi segna 0:1 minuti ma ne le ore notturne me le segna negative, nel caso segna -16:0

Naturalmente io ho solo creato la formula per quel periodo come esempio.
Adesso bisogna fare altrettanto per il resto della giornata, dalle 22 alle 6 del giorno dopo.
Ho cercato di farti capire come è sviluppata + o - la formula.

Mario

Peach1200 24-12-2012 13:53

Quote:

Originariamente inviato da dr.gazza (Messaggio 38742097)
se non è indiscreto che db è ? e che file excel usi ( xls o xlsx ) ?

Ciao!
Non sono direttamente io che sto realizzando la cosa, ma un amico con cui sto collaborando..
Il file di partenza è un ".xls". Per l'import ho bisogno però di un ".csv" utf-8.
Per il database, cosa vuoi sapere? Che tecnologia usa? Penso si parli di SQL.. per gestirlo stiamo utilizzando Liferay.. in ogni caso, chiederò più info!

Comunque, se solo riuscissi a creare un csv come si deve da Excel, sarei a posto.. qualche idea? :)

dr.gazza 24-12-2012 14:44

Quote:

Originariamente inviato da Peach1200 (Messaggio 38759293)
Ciao!
Non sono direttamente io che sto realizzando la cosa, ma un amico con cui sto collaborando..
Il file di partenza è un ".xls". Per l'import ho bisogno però di un ".csv" utf-8.
Per il database, cosa vuoi sapere? Che tecnologia usa? Penso si parli di SQL.. per gestirlo stiamo utilizzando Liferay.. in ogni caso, chiederò più info!

Comunque, se solo riuscissi a creare un csv come si deve da Excel, sarei a posto.. qualche idea? :)

Nel caso in cui si trattasse di M$$QL Sever con una openquery potevi
leggere i dati da excel e scriverli in una tabella del db, senza colpo ferire;

Googolando si trova qualcosa, sulla cui efficacia però, ci sono pareri discordanti sui risultati, cose tipo salvare in csv MsDOS o cambiare la codifica sempre in fase di salvataggio.

Raffaele53 25-12-2012 15:08

X Padre Maronno

Sub InserisciDato()
nome = InputBox("SCRIVI NOME DA INSERIRE")
If nome = "" Then Exit Sub
Set Intervallo = Range("A1:A5000")
If Application.CountIf(Intervallo, nome) = 0 Then
cellavuota = Range("A5").End(xlDown).Row + 1
Cells(cellavuota, 1) = nome
Else
MsgBox "Nominativo già Presente"
End If
End Sub

X fabbio84
Le date e anche le ore, per excel sono solo numeri.
Dovresti mettere anche il giorno, in modo tale da togliere il 6:00 al 21:59 però del giorno precedente. In poche parole in A1 e B1 devi mettere la data comprensiva dell'ora.
=B2-A2 formatto ore h;mm;ss
Poi con vari SE li fai apparire in diurni o notturni.

Lucen 29-12-2012 12:41

Problemi con menù a tendina
 
Buongiorno a tutti, sono nuovo del forum..vi chiedevo un aiuto da 'profanissimo'..
ho un file excel 2003 in cui nella prima colonna ho un menù a tendina con una serie di attività fisiche (nuoto,calcio,etc)e nella seconda colonna un secondo menù a tendina con una serie di numeri(= calorie spese per ogni singolo sport)che sono nell'ordine corrispondente al singolo sport della prima colonna(ovvero le voci dei 2 menù sono per così dire appaiate)..il mio problema è: è possibile, scegliendo uno sport dalla prima colonna, far comparire in automatico,senza doverle cioè selezionare,le calorie bruciate corrispondenti nella seconda colonna?considerato poi che sport diversi possono avere lo stessa quantità di calorie spese.
Grazie a chi saprà intanto districarsi da questa spiegazione (scusate ma non so come altro descrivere il problema)e drmi un aiuto... :)

Raffaele53 30-12-2012 19:38

Togli la convalida dati in colonna B e vai a mettere a fianco dei sport le calorie

esempio tabella:
G1--Nuoto--in H1--100
G2--pesi---in H2--50
G3--Corsa--in H3--150
Nota bene in colonna G non ci devono essere nomi doppi

Poi In B1 puoi metterai =SE(A1="";"";CERCA.VERT(A1;G$1:H$3;2;1))
Nota bene G$1:H$3 significa che la tabella è in G1:H3 se fossero cento sarà G$1:H$100 e devi mettere gli $
Alla fine selezioni la cella B1 e la trascini in basso.

Lucen 31-12-2012 15:08

1 Allegato(i)
Grazie raffaele53, intanto per aver risposto in questi giorni di relax..io ho tentato di applicare quanto mi hai detto ma evidentemente devo aver sbagliato qualcosa perchè le cose non mi tornano(niente di più facile,date le mie scarse capacità con excel..)..se possibile allegherei il fac-simile del foglio excel perchè non so come altrimenti spiegarmi..
Il foglio sarebbe strutturato così:
-in colonna A: elenco sports (che in realtà mi interessa solo per farne il menù di colonna C, per il resto nasconderei o sposterei la colonna A)
-in colonna B: kal corrispondenti a ciascuno sport (anche questa colonna mi servirebbe solo per costruire la formula da scrivere in colonna D, per il resto la nasconderei o sposterei)
-In colonna C ho messo il menù a tendina degli sports della colonna A
-in colonna D vorrei, se fosse tecnicamente possibile, che mi uscissero le kal corrispondenti al singolo sport, in base alla scelta operata dall'elenco di colonna C
Grazie ancora per l'aiuto possibile, auguro a te e a tutti una buona fine d'anno..

Lucen 31-12-2012 15:23

1 Allegato(i)
Che stupido, ho inviato l'immagine invece del file excel compresso..scusate tanto...
ancora tanti auguri....

Raffaele53 31-12-2012 18:05

Metti in D2 =SE(C2="";"";CERCA.VERT(C2;A$2:B$500;2;1)) e poi trascini....giù....Ti posizioni sulla cella D2 angolo destro in basso, appena vedi il mouse diventare come un + clicchl sul tasto sinistro sino in basso dopo rilascialo.

Ps. i Sport sono 127, ho messo 500 cosi puoi aggiungere ancora.

Lucen 31-12-2012 19:44

1 Allegato(i)
Intanto..grazie mille Raffaele53! fenomenale! non voglio abusare della pazienza e disponibilità tua e degli altri utenti, ma come tutti gli 'incapaci informatici' al primo inghippo non so rimediare: ho notato che quando scelgo determinati sport mi esce un valore non corrispondente allo sport scelto o il dato N/D..ma non ho idea del perchè..
sperando ancora nel tuo/vostro aiuto futuro, ora ti/vi lascio festeggiare il Capodanno come si deve..
Buon 2013 a tutti...!

Raffaele53 31-12-2012 22:28

Ho sbagliato metti lo zero finale al posto di 1

=SE(C2="";"";CERCA.VERT(C2;A$2:B$500;2;0)) oppure =SE(C2="";"";CERCA.VERT(C2;A$2:B$500;2;Falso))

Lucen 01-01-2013 12:36

Perfetto, funziona alla grande! grazie ancora Raffaele53, per la disponibilità e la velocità!
..ancora auguri per un buon 2013, e te e a tutti gli utenti del forum.. :)

+Benito+ 02-01-2013 20:14

Quote:

Originariamente inviato da dr.gazza (Messaggio 38699958)
scusa,
se il problema è cancellare la formattazione da una serie di celle
ti posizioni sulla prima cella che vuoi selezionare (BF1 O BH1)
tieni premuto CTRL + SHIFT e poi fai un click sulla sulla freccia in basso (sulla tastiera) e un click freccia dx (sempre da tastiera)
cosi in 2 click avrai selezionato tutte le righe e tutte le colonne a partire dalla cella sulla quale ti trovi
A questo punto cancelli bordi, formattazioni, colori etc!

una volta attivata la selezione CTRL + 1
così fai tutto da un'unica finestra;

:eek: non lo savavo.
Grazie e buon anno

Padre Maronno 04-01-2013 01:36

Quote:

Originariamente inviato da Raffaele53 (Messaggio 38763244)
X Padre Maronno

Sub InserisciDato()
nome = InputBox("SCRIVI NOME DA INSERIRE")
If nome = "" Then Exit Sub
Set Intervallo = Range("A1:A5000")
If Application.CountIf(Intervallo, nome) = 0 Then
cellavuota = Range("A5").End(xlDown).Row + 1
Cells(cellavuota, 1) = nome
Else
MsgBox "Nominativo già Presente"
End If
End Sub


...

Grazie mille, ma cosa è ? Perdonami ma sono una capra in materia, ste istruzioni dove e come vanno inserite ? Grazie.

Raffaele53 04-01-2013 23:54

Si chiama MACRO, premi ALT+F11 noterai sulla sinistra i tuoi fogli.
Ora inserisci la macro nel Tuo foglio oppure crei un MODULO1 e la inserisci.

Ora ci sono due modi ....
Il Worksheet_Change consigliato e sconsigliato
Worksheet_Change sarebbe in automatico, mà bisognerebbe capire il foglio come sia strutturato.
Suggerisco un semplice bottone al quale gli assegni questa macro.
Premi il bottone e...., lui verifica se nelle celle A1:A5000 esiste già.

Sub InserisciDato()
nome = InputBox("SCRIVI NOME DA INSERIRE")
If nome = "" Then Exit Sub
Set Intervallo = Sheets("Foglio1").Range("A1:A5000")
If Application.CountIf(Intervallo, nome) = 0 Then
cellavuota = Range("A1").End(xlDown).Row + 1
Sheets("Foglio1").Cells(cellavuota, 1) = nome
Else
MsgBox "Nominativo già Presente"
End If
End Sub

strathm 25-01-2013 10:58

excel "concatena se"?
 
Salve a tutti
avrei bisogno di una funzione che potremmo ribattezzare "concatena.se". Cerco di spiegarmi meglio: dovrei unire il testo di più celle della colonna B in base alla presenza di un determinato valore nella rispettiva cella nella colonna A.
A B
2011 blu, rosso
2010 giallo, arancio, rosso
2010 blu, verde, arancio
2009 bianco, blu
in modo da ottenere una colonna C così strutturata:

blu, rosso
giallo, arancio, rosso, blu, verde, arancio
bianco, blu

ho provato a scrivere così ma la sintassi non è corretta
se((a1:a100; "2011"); [concatena(b1;b100)]; [""])
se((a1:a100; "2010"); [concatena(b1;b100)]; [""])
se((a1:a100; "2009"); [concatena(b1;b100)]; [""])

vi ringrazio in anticipo per le risposte

Zino 26-01-2013 00:13

Mi sapete dire come posso gestire la formula che prenda in considerazione i dati a partire da una data certa, ad esempio inizio anno od inizio trimestre, sino all'ultimo giorno disponibile aggiornato.

Ho praticamente 2 colonne,
A -Data in ordine inverso (dalla più recente alla più vecchia)
B- valore numerico

con uno script effettuo l'aggiornamento del foglio e si crea una nuova riga A2 con la data odierna ed il nuovo valore.
La formula della Deviazione.Standard che uso dovrebbe includere tutti i valori a partire dalla data di partenza di oggi sino alla data fissa che imposto al 01/01/12.
Ora, con questa DEV.ST(B2:B276), ad ogni aggiornamento odierno la mia data di riferimento si sposta di una riga, mentre la mia formula resta fissa sulla B276 ... vorrei che invece si vada a riposizionare e leggere sempre il dato del 1/1/12 e quindi la B277 ..

Spero di essere stato chiaro, forse dilungandomi ho fatto più confusione :D

Lo stesso tipo di regola devo poterla applicare anche con formula della MEDIA(B2:B276) .... il problema è lo stesso ...

setterernga 26-01-2013 12:23

Oggi excel non mi fa selezionare le celle (ne con mouse, ne con tastiera). Avete idea del perché?

dr.gazza 26-01-2013 15:21

Quote:

Oggi excel non mi fa selezionare le celle (ne con mouse, ne con tastiera). Avete idea del perché?
hai per caso attivo il "BLOCCO SCORRIMENTO" o "BLOC SCORR"
se attivo excel dovrebbe indicartelo in basso a sx

dsforum 08-02-2013 02:13

=CERCA.VERT
 
Salve a tutti,
mi presento mi chiamo Salvatore e uso il computer da tantissimi anni, ma non ho mai partecipato a dei forum ed é un piacere partecipare per la prima volta con tutti voi.

Ho un problema con excel 2007 ho conosciuto la funzione:=CERCA.VERT
nella cella A2 ho inserito =CERCA.VERT(A1;H1:J3;2;0)mi funzione su foglio1

il problema nasce se voglio controllare più matrici es.
foglio 1 H1:J3
foglio 2 H1:J3
foglio 3 H1:J3
ed avere il risultato della ricerca in
foglio 1 cella A2
sperando di essere stato abbastanza chiaro vi chiedo un aiuto.

Cordiali Saluti
Salvatore


Tutti gli orari sono GMT +1. Ora sono le: 07:02.

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