Newsgroup: it.hobby.fai-da-te
Titolo: Excel avanzato

Ciao, questa è difficile:
vorrei che scrivendo un codice in una cella (
p.es
. "P1"), mi copi
automaticamente 5 numeri in 5 caselle di una riga (presenti in una tabella
di un altro foglio di lavoro).
Si può fare?
se serve posso dare altre spiegazioni.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 se serve posso dare altre spiegazioni.
Si può fare quasi tutto (al limite con VBA, se non bastasse un 
semplice "cerca.vert"). Ci spieghi se c'è una relazione tra il codice 
"P1" e il fatto di copiare 5 celle?
-- 
Giuliano
alias Giuli el Dabro
Togli "le mani dalla bocca"
se mi vuoi scrivere privatamente
e ricorda: "Prima de parlar tasi"

 se serve posso dare altre spiegazioni.
Basta la funzione SE  (IF se hai excel inglese)
Mettiamo che la cella B4 del foglio Carte1 sia la cella di controllo e che 
nelle celle da C7 a C11 del foglio Carte2 ci siano i valori da copiare.
In ognuna delle 5 celle del foglio Carte1 dove vuoi copiare quei valori devi 
scrivere
 =SE(B4="P1";+[Cartel2]Foglio1!$C$7)
 =SE(B4="P1";+[Cartel2]Foglio1!$C$8)
 =SE(B4="P1";+[Cartel2]Foglio1!$C$9)
 =SE(B4="P1";+[Cartel2]Foglio1!$C$10)
 =SE(B4="P1";+[Cartel2]Foglio1!$C$11)

 "P1" e il fatto di copiare 5 celle?
Allora, per esempio:
sul foglio di lavoro A ho queste celle su 3 righe:
P1 3 5 7 9 11
P2 2 4 6 8 10
P3 ..... ecc.
Sul foglio di lavoro B vorrei scrivere per esempio nella cella A1 "P1" e
vorrei che nelle celle B1, C1, D1, E1, F1, mi ricopiasse in automatico 3 5
7 9 11.
Viceversa se in A1 scrivessi "P2" vorrei che mi ricopiasse in automatico 2
4 6 8 10... e cosě via se scrivessi P3 ecc.
spero di essermi spiegato decentemente :-)


 spero di essermi spiegato decentemente :-)
Allora è un normalissimo CERCA.VERT
Guarda l'help e in due minuti risolvi.
Ciao
Alberto

  =SE(B4="P1";+[Cartel2]Foglio1!$C$11)
Grande, grazie! ha capito al volo con una spiegazione striminzita, hai
testa! :-)
@Albe: no, intendevo proprio come ha spiegato Pedro.


 testa! :-)
Ok, ma ora mi manca un passaggio, se nella casella scrivo P1 mi copia
nelle oppurtune caselle, ma se scrivo "P2" o "P3" alla formula
"=SE(B4="P1";+[Cartel2]Foglio1!$C$7)", mancano i riferimenti... come si
completa? :-/



con SE annidati
il se funziona cosě SE(condizione logica,ALLORA,ALTRIMENTI)
quindi
=SE(B4="P1"; 
+[Cartel2]Foglio1!$C$7,SE(B4="P2";+[Cartel2]Foglio1!$D$7,SE(B4="P3";+[Cartel2]Foglio1!$E$7, 
...ecc.. )))

 artel2]Foglio1!$E$7, ...ecc.. )))
... questa dovrebbe finire di diritto su 
http://thedailywtf.com/
 :-))

 ...ecc.. )))
Sono seduto sulla riva del fiume ad aspettare che vi rendiate conto che 
state facendo un CERCA.VERT inserendo i valori dentro a millemila 
annidamenti...
Poi, per caritï¿œ, si puï¿œ anche andare da Bologna a Milano passando per 
Dublino, sono convintissimo che alla fine ci si arrivi.
Io perï¿œ passerei da Reggio Emilia...
Alberto

 .... questa dovrebbe finire di diritto su 
http://thedailywtf.com/
 :-))
macché, semplicemente sto facendo dei listini automatici di articoli
formati da vari componenti...
Allora mi si sta fondendo il cervellino:
Se faccio: =SE(B5="P1";Foglio2!B4) tutto ok
ma se aggiundo: =SE(B5="P1";Foglio2!B4,SE(B5="P2";Foglio2!C4)) non me la
accetta.. dove sbaglio?
@Albe: prova a fare un esempio con una formula di quello che vuoi dire, se
semplifichi tanto meglio!


 @Albe: no, intendevo proprio come ha spiegato Pedro.
???
Il suggerimento migliore è quello di Albe abbi solo l'accortezza di
ordinare alfabeticamente la matrice di riferimento nella colonna di
ricerca per rendere le cose più efficienti alla funzione CERCA.VERT.
... poi se intendevi proprio come ti dice Pedro allora è giusto solo
quello, un po' macchinoso, poco efficiente, soggetto a errori di
scrittura della formula nella cella soprattutto se le stringhe di
ricerca sono tante (ed ai limiti del numero di SE annidati) ma se
correttamente scritto nel rispetto di sintassi e vincoli funziona.
guarda l'help in linea come suggerito
saluti
marzioTA

 semplifichi tanto meglio!
Guarda, se ti faccio un esempio devo farlo sintatticamente corretto, 
altrimenti dopo un minuto riscrivi perchè manca una virgola o cose del 
genere.
Quindi dovrei aprire excel, mettere giù due dati, ecc...
E ovviamente non lo faccio.
Ma se tu inserisci una formula con excel, con l'inserimento guidato, 
poi per ogni parametro c'è scritto a fianco cos'è, come si usa, c'è 
l'anteprima del risultato, insomma, è una cosa che non solo è semplice, 
ma ti insegna qualcosa di utile...
Ciao
Alberto

 quello, 
Quel che devo fare � proprio quello spiegato da Pedro; forse mi sono
spiegato male, nell'esempio che ho fatto "P1" non � una casella � un
codice di testo.
Ho guardato l'help di CERCA.VERT. ma mi sembra che non sia quello che fa
al caso mio.
mi potete solo dire cosa ho sbagliato nella sintassi:
=SE(B5="P1";Foglio2!B4,SE(B5="P2";Foglio2!C4))
please!


 accetta.. dove sbaglio?
 =SE(B5="P1";Foglio2!B4;SE(B5="P2";Foglio2!C4))
il diavolo sta nei dettagli
come dicevo errori di scrittura ...
saluti
marzioTA

 ... questa dovrebbe finire di diritto su 
http://thedailywtf.com/
 :-))
c'e' qualcosa di complicato o poco chiaro?
E' solo una banale funzione di base.

 accetta.. dove sbaglio?
nel mettere la -virgola- al posto di -punto e virgola-.
es:
=SE(B4="p1";+[Cartel2]Foglio1!$C$7;SE(B4="p2";+[Cartel2]Foglio1!$D$7;SE(B4="p3";+[Cartel2]Foglio1!$E$7;" 
")))

 E' solo una banale funzione di base.
Nulla di complicato, chiara e banale funzione di base, tuttavia:
è inutilmente macchinosa e complicata da scrivere allo scopo.
inoltre direi anche non generale:
prova a scriverla per una matrice 1000(righe)x6(colonne) secondo me
qualche problema lo hai
non ricordo il limite di SE annidati ma ricordo che c'è, quindi
verifica il numero di righe massime della matrice a cui un tale
approccio può essere applicato.
saluti
marzioTA

inoltre direi anche non generale:
ha chiesto come risolvere un semplice problemino mica voleva la 
dimostrazione per esteso dell'ultimo teorema di Fermat. ;-) 

 =SE(B5="P1";Foglio2!B4,SE(B5="P2";Foglio2!C4))
Che è una schifezza disumana, orsù...
=CERCA.VERT($A2;Foglio1!$A:$C;2;FALSO)
Lo metti nella cella B2 del foglio dove vuoi RICEVERE il risultato.
Poi lo trascini a destra per il numero di colonne che vuoi.
Nella B3 metterai indice 3 prima di ;FALSO, nella cella B4 metterai 4, 
ecc...
Poi lo trascini in giù finchè ti serve.
Forza, ragazzi, se in due ti diciamo che devi usare CERCA.VERT, 
proviamo per un attimo ad usare un briciolo di umiltà e a 'ipotizzare' 
di dover seguire i consigli ricevuti, anzichè insistere a dire "non fa 
per me"...
Alberto

 dimostrazione per esteso dell'ultimo teorema di Fermat. ;-)
Infatti.. grazie a tutti per il brainstorming, ce l'ho fatta! :-)


 e restituisce il valore nella stessa riga di un'altra colonna"
Grazie mille, domani provo anche col tuo metodo.. per oggi prima mi si
deve raffreddare il cervellino :)


 wrote in news:4c18dfe5$0
$12127$
4faf...@reader4.news.tin.it
:

Esatto, è una banale funzione di base... si chiama CERCA.VERT :-) 


ma sai..io ho preso da mio padre che era un gran cacciatore, perň era 
vegetariano, cosě andava nei boschi e sparava ai funghi.


dopo B4 ci va un ; 

 Io però passerei da Reggio Emilia...
Dillo a me, io quando trovo anche solo una funzione se anninadata reagisco 
con starnuti e lacrimazioni, mi metto sotto, piuttosto con VBA e la 
elimino....fare una matrice del genere con 3 4 se annidati a me viene 
male..anche se potrebbe essere un ottimo aiuto per imparare a maneggiare 
excel :) 

 dito hihihi
eh ma bisogna stare attenti perchè spesso a guardare solo la luna mentre si 
cammina è facile finire dentro un fosso.
Capita poi di avere il dito in gangrena e se guardi solo la luna è facile 
perdere il braccio.. ogni tanto un'occhiata al dito non fa male. ;-)


brainstorming?
Il problema è che non sei ancora entrato nella filosofia
di excel che non è certo quella di scansare le funzioni che
non si conoscono...
Non c'è nulla di particolarmente "avanzato" nel cerca.verticale,
è una funzione che si potrebbe definire di base la dove ci sta
da relazionare dei record.