Valore cella condizionato



  • Valore cella condizionato
    di stemalti (utente non iscritto) data: 28/01/2014 21:55:54

    Ciao a tutti
    Ho realizzato un file che mi serve per la gestione degli spazi in magazzino, vorrei automatizzarlo.
    Praticamente vorrei creare una tabella composta da cella1 nome articolo, cella2 lunghezza, cella3 larghezza.
    Vorrei creare un menù a tendina ad esempio in A10 dove scegliere l'articolo. Vorrei che in automatico nella cella A11 comparisse la lunghezza , nella cella A12 la larghezza.
    Vorrei anche sapere se è possibile creare questa tabella sul foglio 2 dello stesso file.

    Grazie in anticipo



  • di ninai (utente non iscritto) data: 29/01/2014 07:46:27

    Ciao
    dovrebbe bastarti un CERCA.VERT(....) o simile, ma per avere i riferimenti specifici, dovresti allegare un file di esempio con le tabelle predisposte



  • di LucaS. (utente non iscritto) data: 29/01/2014 08:48:49

    Ciao ti ho allegato un file.



  • di stemalti (utente non iscritto) data: 29/01/2014 12:52:02

    grazie Luca S, hai capito perfettamente, potresti spiegarmi come hai fatto, almeno imparo qualcosa di nuovo

    Ciao Grazie



  • di LucaS. (utente non iscritto) data: 29/01/2014 12:59:55

    Non ho usato formule o altre funzioni di excel.
    Ho usato VBA.
    Se non sai cos'è sarebbe troppo lungo spiegarti come ho fatto.
    In rete trovi parecchie guide.



  • di stemalti (utente non iscritto) data: 30/01/2014 00:16:45

    Ciao Luca S.
    lo scopo di questi forum è anche quello di imparare dagli altri più bravi, io non voglio copiare il tuo lavoro, voglio capire.
    Qualcosina di vba capisco e riesco a fare delle macro, però questa cosa non riesco a risolverla.
    comunque grazie



  • di ninai (utente non iscritto) data: 30/01/2014 07:22:22

    Ciao
    Se non vuoi usare VBA, usando i riferimenti di Luca (ciao),
    In A8 una tendina per scegliere (questo credo lo sai fare)
    ed in una cella qualsiasi:
    =CERCA.ORIZZ($A$8;$B$1:$H$3;RIF.RIGA($A2);FALSO)
    e trascini una cella in basso.



  • di LucaS. (utente non iscritto) data: 30/01/2014 08:48:22

    Scusa stemalti non volevo offenderti.
    Se conosci VBA allora le cose cambiano.
    Capirari che doverti spiegare alcune istruzioni è diverso dal dover partire da zero.
    Il mio foglio lo puoi anche copiare, l'ho messo per quello, altrimenti avrei aggiunto una protezione con password.
    Ora veniamo alla spiegazione.
    In ThisWorkbook l'evento open fa caricare la combobox (menù a tendina). La variabile k conta le colonne occupate, mentre il ciclo for da 2 (la colonna 1 contiene il titolo) a k aggiunge all'elenco a discesa gli articoli. In questo modo anche aggiungendo altri articoli, aprendo il file è possibile selezionarli dal menù.
    Sul foglio1 l'evento change della combobox si aziona quando (appunto) il valore della combobox cambia. Vengono quindi cancellate le celle A11, A12. Con lo stesso sistema di prima vengono esaminati gli articoli e nel caso ci sia una corrispondenza vengono riportati i valori delle righe 2 e 3 corrispondenti alla colonna con l'articolo selezionato.
    Volendo essere corretti si potrebbero sostituire alcune parti:
    -sostituendo Range("iv1") con Cells(1, Columns.Count) non rischieresti di avere problemi usando versioni di excel recenti che hanno più righe e colonne.
    -dopo Range("a12") = .... si può mettere exit for in modo da risparmiare tempo e memoria terminando l'operaione dopo aver trovato l'articolo.



  • di stemalti (utente non iscritto) data: 01/02/2014 10:03:58

    tranquillo Luca S non mi sono offeso,
    anzi vi ringrazio di nuovo per gli spunti che mi avete dato, la tua soluzione è la più centrata.

    un saluto a tutti, chiudo il post come risolto