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)


case 15-11-2010 23:40

Menù per servizio mensa
 
Ciao a tutti, avrei bisogno di una mano con Excel visto che l'ho usato 2 volte in vita mia.
In pratica faccio servizio mensa ad un'azienda; il giorno prima invio il menù tramite email alla ditta, il mattino dopo mi rispondono con la lista degli operai e le relative scelte delle pietanze, tutto in formato testo.
Ho pensato, per velocizzare ed evitare errati conteggi, di creare una tabella modello con la lista degli operai di lato e in alto le pietanze (2 primi, 2 secondi, 2 contorni a scelta)
Sotto la tabella ci andrebbe un riassunto degli ordini, tipo contatore, ad es:
PRIMO1 = 10
PRIMO2 = 8
SECONDO1= 4
SECONDO2= 6
CONTORNO1= 4
CONTORNO2= 7

Una volta inviato il modello per email, loro dovrebbero solamente selezionare la preferenza nella tabella e rigirarmi l'email..

Spero di essere stato chiaro, grazie anticipatamente dell'aiuto, Andrea.

Cuchetto 16-11-2010 10:29

Ciao,

ho un problemino, spero che qualcuno possa aiutarmi:

ho n°2 fogli excel

sul primo foglio ho n°2 colonne (A e B):

A:------------B:
pippo-------- 1
pluto---------2
paperino------3


sul secondo foglio ho sempre n°2 colonne (A e B):

A:-------------B:
topolino------- 4
gastone--------5
pippo----------6
pluto----------7
paperino-------8


ora, io dovrei prendere i valori della colonna B del foglio 1 di pippo,pluto e paperino e sostituirli ai valori della colonna B del foglio 2 di pippo, pluto e paperino, ottenendo cosi:

A:------------B:
topolino-------4
gastone-------5
pippo----------1
pluto----------2
paperino------3

c'è un modo x farlo in automatico?? :muro:

MarcoGG 16-11-2010 10:52

"In Automatico" c'è sempre e solo VBA. ;)
Anche perchè non è detto che le voci siano sempre nell'ordine giusto... o sbaglio ?

Cuchetto 16-11-2010 10:58

esatto, non sono nello stesso ordine :doh:

altre idee su come fare??

mi va pure bene anche trovare un modo x allineare le 4 colonne dei due fogli e metterle in ordine, xo visto che nel foglio 2 ci stanno piu nomi del foglio 1 mi dovrebbe lasciare lo spazio quando non trova il nome

Raffaele53 16-11-2010 11:57

1 Allegato(i)
X Cucchetto
Nel foglio2, nella casella C1 scrivi
=SE(VAL.ERRORE(CERCA.VERT(A1;Foglio1!A:A;1;0));B1;CERCA.VERT(A1;Foglio1!A:B;2;0))
e trascini giù la formula.
In D1 scrivi
=SE(B1=C1;"N";"S") e S equivale al fatto che a cambiato il valore

X case
Vedi se va bene....
Fatto con excel 2007, per 50 persone, casomai trascini ancora le celle e modifichi tutte quelle rosse
da =CONTA.SE(B$6:B$55;F2) a =CONTA.SE(B$6:B$xxx;("F2" è equivalente della cella a fianco da ricercare) e dove xxx è la riga finale degli operai
Celle gialle menu e lascerei anche la casella "NULLA"
Celle Blu i nomi
Sulle celle verdi e clicchi il menu.

Cuchetto 16-11-2010 12:21

Quote:

Originariamente inviato da Raffaele53 (Messaggio 33664636)
X Cucchetto
Nel foglio2, nella casella C1 scrivi
=SE(VAL.ERRORE(CERCA.VERT(A1;Foglio1!A:A;1;0));B1;CERCA.VERT(A1;Foglio1!A:B;2;0))
e trascini giù la formula.

grazieeeeee!!! :ave: :ave: :ave: :ave: :ave:

funge a meraviglia! :cry: :cry: :cry:

non è che per caso c'è anche un modo x fargli evidenziare (in grassetto o come casella colorata) i valori che ha preso dal foglio 1??

fred76 16-11-2010 22:29

Salve a tutti,

Ho bisogno di aiuto su Excel, programma che no so usare molto;

Il form che uso a lavoro, ha tre celle dove sono riportati i tre prodotti precedenti, mentre in una quarta cella il prodotto correntemente in uso:

ES:

A1: Pane
A2: Sale
A3: Olio

Quarta cella: Pasta

Quello di cui ho bisogno è che quando inserisco un nuovo prodotto nella quarta cella, il prodotto pasta vada ad occupare la cella A1 e di conseguenza pane e sale vadano nelle celle A2, A3, cancellando il prodotto Olio

ES:

A1: Pasta
A2: Pane
A3: Sale

Quarta cella: Aceto

Grazie
Alberto

Rimborsato 17-11-2010 10:23

EXCEL - PROBLEMI Menù a tendina dinamici
 
--------------------------------------------------------------------------------

Ciao a tutti. Ho provato a fare una ricerca ma non ho trovato la soluzione al mio problema .

Ho già letto di tutto di più sulla creazione dei menù a tendina dinamici. Però mi ritrovo con un problema che non riesco a risolvere. Seguo tutto alla lettera, però nel momento in cui vado a convalidare i dati con elenco e inserisco la formula =INDIRETTO(xyz) viene riscontrato il seguente messaggio di errore "l'origine fornisce come risultato corrente un errore. Continuare?". Dando ok, nel momento in cui effettuo la prima scelta della categoria tra le sottocategorie trovo giustamente le voci correlate. Però nel momento in cui scelgo la seconda categoria (diversa dalla prima) nelle sottocategorie mi ritrovo quelle della prima scelta.

Ad esempio:

Categoria: Ducati - Sottocategorie: Monster - Desmosedici - 899
Categoria: Fiat - Sottocategorie: Punto - Panda - Croma
Categoria: Suzuki - Sottocategorie: Burgmann - Bandit - GSX

Prima scelta: Ducati. Tra le sottocategorie trovo correttamente Monster, Desmosedici, 899.

Seconda scelta: Suzuki. Tra le sottocategorie trovo Monster, Desmosedici, 899.

Oppure:

Prima scelta Suzuki. Tra le sottocategorie trovo correttamente Burgmann, Bandi, GSX.

Seconda scelta Fiat. Tra le sottocategorie mi ritrovo le sottocategorie Burgmann, Bandi, GSX.

Quale potrebbe essere il problema???

Rimborsato 17-11-2010 16:47

Smanettando un pò per capire il problema sono riuscito ad individuarlo. Siccome faccio la formula =INDIRETTO(xyz) su più celle, il sistema mi copia la formula mettendo come valore assoluto la prima cella. Difatti se selezione per primo Ducati come sottocategorie escono quelle corrette così come selezionando Suzuki piuttosto che Fiat. E' in questo che sbaglio?? C'è un modo di farlo in blocco oppure bisogna obbligatoriamente farlo singolarmente? :muro:

Grazie

+Benito+ 18-11-2010 09:55

Che voi sappiate openoffice corrompe i campi Dati->convalida?
Ho passato un figlio ad un collega che ha openoffice, mi è tornato indietro ed io con excel 2003 non riesco più a far funzionare le celle con i dati convalidati con criterio elenco.

Nel foglio ho tre celle con il campo dati convalida, che si basano l'una sull'altra per stabilire l'elenco da rendere disponibile con la freccetta a lato della cella, in ordine sono:

Nella colonna BF
Codice:

=TipoRAD
Nella colonna BC
Codice:

=SE(Chart!D1="Flat_ci";nP;SE(Chart!D1="Col_ci";nC;SE(Chart!D1="Flat_al";nA;SE(Chart!D1="Tube_st";nT;SE(Chart!D1=1;nCustom;"/")))))
Nella colonna BE
Codice:

=SE(Chart!B1="Flat_ci";aP;SE(Chart!B1="Col_ci";aC;SE(Chart!B1="Flat_al";aA;SE(Chart!B1="Tube_st";aT;SE(Chart!B1=1;aCustom;"/")))))

I riferimenti sono tutti nomi correttamente definiti. Oltre a non funzionare più la freccetta per aprire la tendina di scelta se non nel primo caso (anche se la freccetta appare), se provo a modificare la formula (è anche cambiata, dopo dico come) mi restituisce l'errore:

"L'origine dell'elenco deve essere un elenco delimitato o un riferimento ad una singola riga o colonna"


La formula è cambiata nel senso che nel criterio di convalida in tutte le celle ho il riferimento a Chart!B1 oppure a Chart!D1 a seconda della cella in cui c'è la formula, mentre nella formula originale il riferimento non ha la voce della scheda (non c'è Chart!) e soprattutto il riferimento non è a D1, ma BE7, per dire, e scorre con la cella. QUi tutte le celle hanno lo stesso riferimento.
Ci sto impazzendo, di solito non ho mai avuto problemi e questa volta invece non funziona più una ceppa....Non vorrei che passando il file su openoffice me l'abbia corrotto e adesso non so come sistemarlo.
Attualmente inizio a rifarlo daccapo sperando che funzioni, c'è che porca eva non mi sono salvato la copia vuota in inglese e me lo devo rifare daccapo, sono quasi 2 MB di foglio.....


EDIT: cancellando il contenuto delle celle, eliminando le condizioni di convalida dati e riscrivendole a mano, funziona.
Bah!

MarcoGG 18-11-2010 10:16

Quote:

Originariamente inviato da +Benito+ (Messaggio 33683963)
Che voi sappiate openoffice corrompe i campi Dati->convalida?
Ho passato un figlio ad un collega che ha openoffice, mi è tornato indietro ed io con excel 2003 non riesco più a far funzionare le celle con i dati convalidati con criterio elenco.
...
...

Anche ! Già questo Thread è una babele, se poi ci infiliamo pure OpenOffice... :D :p

Comunque il mio consiglio è : MAI ! Mai fare queste cose. Calc è Calc ed Excel è Excel. Mediamente un file di Excel conterrà sempre più informazioni e meta-dati di un file di Calc, e Calc non è in grado di interpretare tutto correttamente. Quello che Calc ha combinato su quel file di Excel al 99% è irrecuperabile.

Raffaele53 18-11-2010 16:45

1 Allegato(i)
Festeggiamo le 4 cifre con una domanda.......
Per carità non rispondete tutti insieme che al massimo pago solo una birra e ringraziatemi che Vi ho semplificato il problema..Comunque in poche parole sono riferimenti incrociati.

Tutti noi trasciniamo le celle per semplicità.
Naturale, se devo fissare una colonna ci metto $A1 e se devo fissare una riga A$1
Ci siamo......, comando Trasponi serve a tutt'altro.
Vi ho allegato un esempio.... e adesso spero proprio di spiegarmi bene.
In cella A2=SE(A1>A8;CERCA.VERT(A1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK
In cella A3 =SE(A1>B8;CERCA.VERT(A1-B8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK

In cella B2=SE(B1>A8;CERCA.VERT(B1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK
In cella C2=SE(C1>A8;CERCA.VERT(C1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK

Nella cella B3 ci dovrebbe andare
=SE(B1>B8;CERCA.VERT(B1-B8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))

ecc ecc .... io desiderei (secondo me esiste il modo, ma non lo sò) che ricopiando/trascinando le celle si compilassero le altre 500 celle.
Grazie mille

Rimborsato 18-11-2010 21:23

E in merito al mio problema nessuno sa darmi una risposta??? :muro: :muro: :muro:

Raffaele53 19-11-2010 09:14

Ho fatto tutto a manina e ho risparmiato una birra, però mi piacerebbe aver la soluzione.

X Rimborsato
Se ho capito bene il problema devi usare due COMBOBOX e del codice,
Tempo fa su gogle ho trovato la soluzione. Non capisco cosa c'entra INDIRETTO. Oppure sposta un esempio

+Benito+ 19-11-2010 09:40

1 Allegato(i)
Quote:

Originariamente inviato da Rimborsato (Messaggio 33673747)
--------------------------------------------------------------------------------

Ciao a tutti. Ho provato a fare una ricerca ma non ho trovato la soluzione al mio problema .

Ho già letto di tutto di più sulla creazione dei menù a tendina dinamici. Però mi ritrovo con un problema che non riesco a risolvere. Seguo tutto alla lettera, però nel momento in cui vado a convalidare i dati con elenco e inserisco la formula =INDIRETTO(xyz) viene riscontrato il seguente messaggio di errore "l'origine fornisce come risultato corrente un errore. Continuare?". Dando ok, nel momento in cui effettuo la prima scelta della categoria tra le sottocategorie trovo giustamente le voci correlate. Però nel momento in cui scelgo la seconda categoria (diversa dalla prima) nelle sottocategorie mi ritrovo quelle della prima scelta.

Ad esempio:

Categoria: Ducati - Sottocategorie: Monster - Desmosedici - 899
Categoria: Fiat - Sottocategorie: Punto - Panda - Croma
Categoria: Suzuki - Sottocategorie: Burgmann - Bandit - GSX

Prima scelta: Ducati. Tra le sottocategorie trovo correttamente Monster, Desmosedici, 899.

Seconda scelta: Suzuki. Tra le sottocategorie trovo Monster, Desmosedici, 899.

Oppure:

Prima scelta Suzuki. Tra le sottocategorie trovo correttamente Burgmann, Bandi, GSX.

Seconda scelta Fiat. Tra le sottocategorie mi ritrovo le sottocategorie Burgmann, Bandi, GSX.

Quale potrebbe essere il problema???

Se ho capito, hai due celle con convalida dati, nella prima scegli la marca, nella seconda scegli il modello.
Puoi usare INDIRETTO ma no lo trovo utile, puoi mettere in convalida dati della seconda cella un SE(CELLA1="Ducati";Nome1;SE(CELLA1="Fiat";Nome2;SE(cella1="Suzuki";Nome3;"")))
E poi definisci in un altro foglio di lavoro o anche nello stesso fuori dalle balle i nomi nome1, nome2, nome3, come tre colonne di celle in cui scrivere i modelli.
Puoi anche definire un nome "marche" per creare l'elenco nella prima cella, oppure puoi usare un riferimento diretto. Di solito uso i nomi perchè poi se riapri il foglio dopo tempo capisci al volo cosa fa la formula.

Master.Jimmy 19-11-2010 18:03

raga ho un problema con excel che devo risolvere.
Ho 9 giorni uomo LAVORATIVI.

Per prima cosa vorrei sapere a partire da oggi, quale sarà il giorno in cui i 9 (cella A1) giorni lavorativi saranno conclusi
quindi dentro una cella potrei fare =giorno.lavorativo(adesso();A1)
cioè oggi 19/11/2010 mi restituisce 02/12/2010 in quanto i giorni lavorativi sono 5 ed esclude sabato e domeniche.

La domanda che vi faccio è la seguente. Vorrei mettere un valore in input, tale da cambiare i giorni lavorativi (in gruppi di 5) e metterli in gruppo di X (valore di input).
Mi spiego
io voglio fare in modo che A SETTIMANA io possa utilizzare SOLO 4 giorni lavorativi (dei 9 a disposizione) e non 5. In questo modo per completare i 9 giorni lavorativi, la data finale (a partire da oggi) non sarà più lo 02/12/2010 ma 06/12/2010. Se invece di 4 giorni avessi voluto mettere 3 giorni, ovviamente la data sarebbe ancora successiva.

Tutto da considerare al netto delle festività classiche italiane (quello che fa la funzione giorno.lavorativo)
Chi può aiutarmi?

ses4 19-11-2010 19:05

Quote:

Originariamente inviato da Raffaele53 (Messaggio 33688520)
Festeggiamo le 4 cifre con una domanda.......
Per carità non rispondete tutti insieme che al massimo pago solo una birra e ringraziatemi che Vi ho semplificato il problema..Comunque in poche parole sono riferimenti incrociati.

Tutti noi trasciniamo le celle per semplicità.
Naturale, se devo fissare una colonna ci metto $A1 e se devo fissare una riga A$1
Ci siamo......, comando Trasponi serve a tutt'altro.
Vi ho allegato un esempio.... e adesso spero proprio di spiegarmi bene.
In cella A2=SE(A1>A8;CERCA.VERT(A1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK
In cella A3 =SE(A1>B8;CERCA.VERT(A1-B8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK

In cella B2=SE(B1>A8;CERCA.VERT(B1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK
In cella C2=SE(C1>A8;CERCA.VERT(C1-A8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))....OK

Nella cella B3 ci dovrebbe andare
=SE(B1>B8;CERCA.VERT(B1-B8;$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))

ecc ecc .... io desiderei (secondo me esiste il modo, ma non lo sò) che ricopiando/trascinando le celle si compilassero le altre 500 celle.
Grazie mille

=SE(A$1>SCARTO($A$8;;RIF.RIGA()-2);CERCA.VERT(A$1-SCARTO($A$8;;RIF.RIGA()-2);$I$1:$J$16;2);CERCA.VERT(0;$I$1:$J$16;2))

Ciao

Raffaele53 19-11-2010 21:23

X ses4
Grazie lo stesso ma ormai ho fatto, la tua va bene solo trascinandola verso destra. Verso il basso rimane fissa (magari mi sarò espresso male io).

C'eranno verticali ..
La 1 riga era A1>A8
La 2 riga era A1>B8
La 3 doveva essere A1>C8

Infine le righe..
La 1 colonna A1>A8
La 2 colonna B1>A8
La 3 doveva essere C1>A8

Piuttosto una cortesia che non riesco a risolvere. Ex
pippo 2
minni 4
pluto 4
=Cerca.vert(grande(b:b;1);A:B;1;0)
Adesso se faccio =Cerca.vert(grande(b:b;2);A:B;1;0) Quando ci sono numeri uguali va in tilt.
Ho provato anche con Rif.Riga e anche
=INDIRETTO(INDIRIZZO(CONFRONTA(GRANDE(D:D;1);D:D;0);1))

iaio 20-11-2010 11:26

ciao
mi serve un comando che non trovo...
ho una lista così:

01 - alfa 12/11/2010 - 02 - beta 4/07/2001 - 03 - gamma 22/12/2040 - etc...

vorrei che mi formattasse:
A B C
01 - alfa 12/11/2010
02 - beta 4/07/2001
03 - gamma 22/12/2040

su 3 colonne differenti:

è possibile?

Raffaele53 20-11-2010 16:23

Ho aggiunto una riga in alto e una colonna a sinistra dove ho messo i vari ="B2" ="C2" ecc ecc Poi con questa ho risolto definitavamente.
=SE(INDIRETTO(B$1)>INDIRETTO($A3);CERCA.VERT(INDIRETTO(B$1)-INDIRETTO($A3);$J$2:$K$17;2);CERCA.VERT(0;$J$2:$K$17;2))

Per quanto riguarda "Piuttosto una cortesia......."
Ho risolto moltiplicando le cifre per un milione (dato che c'erano virgole) e sommato il Rif.Riga
Da qui ho ricavato le righe che mi servivano.
Comunque grazie lo stesso.

X laio
Avresti se non erro una riga infinita con tutti i dati.
Se non fossero tanti suggerisco di farlo a mano.
Oppure ci vuole del Codice VBA


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

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