Inserire colonna adattando formula
Hai un problema con Excel? 
Inserire colonna adattando formula
di Antonio73 (utente non iscritto) data: 24/07/2015 23:42:49
Salve a tutti.
Avrei un problema che spero riusciate a risolvere. Ho un Foglio Excel che consta di circa un migliaio di righe per 27/28 colonne. Nella colonna B vi è il prezzo di un prodotto, nelle colonne da C a G vi possono essere degli sconti sul prezzo, nella colonna H vi è uno sconto in valore (non percentuale), nella colonna I appare il prezzo scontato GIA' DECURTATO della nota di credito in colonna J.
Infine nella colonna O ho il costo commerciale ottenuto deducendo altri sconti in fattura (in percentuale o in valore). Fin qui tutto bene, credo.
Ho necessità di inserire una o più colonne per altri sconti, in percentuale e/o in valore, PRIMA della colonna I.
Come faccio a adattare le varie formule? Ho pensato a VBA e mi sono costruita una macro ma ho messo uno stop perchè, ovviamente, non funziona.
Potete darmi una mano?
Grazie anticipate e vi allego il file InsCol.xls
di cromagno data: 25/07/2015 07:34:52
Ciao Antonio,
in base a quello che ho visto nel tuo file, nella cella I13 puoi usare una formula matriciale (in pratica, quando confermi la formula non devi premere solo INVIO ma la combinazione di tasti CTRL+MAIUSC+INVIO).
Quindi, nella cella I13 metti questa formula:
=(PRODOTTO(1-(C13:G13)/100;$B13)-H13)*(1-J13/100)
e conferma con la combinazione di tasti CTRL+MAIUSC+INVIO.
Se dovessi aggiungere altre righe, ti basta copiare la cella I13 verso il basso fin dove serve.
Fammi sapere se era questo che intendevi...
Ciao
di Antonio73 (utente non iscritto) data: 25/07/2015 11:24:43
Grazie "cromagno" per la celere risposta e per la formula che cercherò di utilizzare.
Però io ho chiesto come devo fare "se inserisco una colonna (non una riga)" ad adattare la formula anche per la nuova colonna inserita, tenendo presente che i dati di questa colonna potrebbero essere in forma percentuale (come quelli dalla col.C alla col.G) oppure per valore (come il dato in col.H).
In altri termini, vorrei inserire una colonna con dati in percentuale: posso inserirla prima della col.H e "aggiustare la formula" (quella che mi hai suggerito o la mia) che si trova in col.I anche per questa nuova colonna. Stesso discorso se voglio inserire una colonna per valore: posso inserirla prima della col.I e "aggiustare" come sopra.
Anziché farlo manualmente vorrei poterlo fare con VBA (e fin qui la mia macro ci arriva) e "aggiustare" la formula (sempre con VBA) in col.I
Spero di essere stato chiaro. Si può fare?
Grazie in anticipo.
di cromagno data: 25/07/2015 11:31:06
Con quella formula, se inserisci colonne entro le colonne C e G la formula si adatta da sola...
Per quanto riguarda l'inserimento di colonne con valori non percentuali (tipo la H), dovrei correggere la formula. Avevo capito che di valori non in percentuale ci fosse solo la colonna H.
[EDIT]
I valori non in percentuale li aggiungeresti comunque dalla colonna H in poi?
di Antonio73 (utente non iscritto) data: 25/07/2015 11:42:33
Grazie ancora per la pazienza cromagno.
Ho capito come funziona la formula per le percentuali: devo inserire l'eventuale colonna "entro" il range C:G e si adatta da sola. Ottimo.
Colonne di "valori" per adesso ne ho una sola ma è previsto che, a regime, debbano essere tre e potrei aggiungerli, diciamo, in coda dopo la H.
Si può adattare?
Grazie.
Antonio
di cromagno data: 25/07/2015 11:55:00
Ok, questa va bene se le colonne dei valori non in percentuale li inserisci dalla colonna I (nella condizione attuale, in generale, inserisci la colonna selezionando la colonna "costo fatt/impon"):
=(PRODOTTO(1-(C13:G13)/100;$B13)-SOMMA(INDIRETTO(INDIRIZZO(RIF.RIGA();RIF.COLONNA(H13))&":"&INDIRIZZO(RIF.RIGA();RIF.COLONNA(I13)-1))))*(1-J13/100)
conferma sempre con CTRL+MAIUSC+INVIO
di cromagno data: 25/07/2015 12:10:28
Ho modificato la formula di prima perchè considerava delle colonne che avevo già inserito per fare delle prove.
Ora dovrebbe andare bene.... sperem
di Antonio73 (utente non iscritto) data: 25/07/2015 15:06:54
Ciao cromagno
Ho inserito la tua formula ma mi dà un risultato errato. Nel tuo ultimo post dicevi "Ho modificato la formula di prima perchè considerava delle colonne che avevo già inserito per fare delle prove." ma, forse, hai dimenticato di inserire la nuova formula corretta. O sbaglio?
Ciao
di cromagno data: 25/07/2015 15:22:53
no, quella che c'è adesso è corretta.
Prova ad allegare il file con la formula inserita per poter vedere quale errore viene fuori (ora sono a lavoro ma gli darò un'occhiata appena posso).
di Antonio73 (utente non iscritto) data: 25/07/2015 15:27:28
Io non ho inserito nessuna colonna, ho inserito la nuova formula in I20, con i riferimenti alla riga giusta, ma il risultato è differente.
Ti allego il file InsCol2. Grazie.
Antonio
di cromagno data: 25/07/2015 15:55:09
Son riuscito a vedere l'allegato dal cell...
Ma perchè hai copiato la formula nella cella I20?
La formula è stata fatta per essere messa in partenza nella cella I13 e quando copi la cella verso il basso la formula si adatta (e naturalmente devono essere presenti i valori per fare i calcoli anche nella riga dove hai copiato la cella).
Quindi, copia la formula nella cella I13 non nella I20 e dopo puoi proseguire.
di Antonio73 (utente non iscritto) data: 25/07/2015 16:07:49
Grande cromagno. Funziona perfettamente. Grazie.
Non capisco perché, anche se avevo lasciato i riferimenti alla riga 20, mi dava quell'errore. Forse ci sono arrivato: i vari INDIRETTO/INDIRIZZO ti portano alla riga dove è la formula e non alla riga dei calcoli.
Comunque, perfetto. Ancora grazie.
Ciao, Antonio
di cromagno data: 25/07/2015 16:14:29
Si, nella formula c'è un rif.riga() che funziona bene a partire dalla riga 13...
Comunque tutto è bene etc, etc...
Ciao
Vuoi Approfondire?