Discussione:
moltiplicare valore celle celle
(troppo vecchio per rispondere)
xxxkkk
2012-03-21 15:36:56 UTC
Permalink
Supponiamo di avere una tabella con dei valori ad es.

1 2 3
4 5 4
1 2 3

se volessi moltiplicare ogni valore della cella per un determinato importo
ad es per 2, come dovrei procedere?
naturalmente non mi interessa creare una nuova tabella
ma lavorare sulla stessa. Avevo pensato ad una soluzione VBA con un ciclo,
oppure ad una macro con incolla speciale ma non ci sono altre soluzioni?
Andrea.9
2012-03-22 14:06:26 UTC
Permalink
la soluzione in VBA è percorribile ma in merito non ti posso aiutare
immagino che la tabella contenga valori che vengono inseriti uno alla
volta e che dopo debbano essere moltiplicati per il tuo valore
costante secondo una tua esigenza.
io farei così:
crei una tabella uguale in un foglio separato o in altra parte dello
stesso foglio (eventualmente nascosta o eventualmente con caratteri
dello stesso colore dello sfondo).
in essa metti delle formule così strutturate:
=indirizzo_cella_tabella*tua_costante
dopo crei una macro richiamabile da tastiera o con un pulsante che
faccia banalmente un copia dalla tabella di appoggio con "incolla
speciale valori" nella posizione della tabella originaria.
attenzione che a questo punto i dati originari sono andati persi e che
ogni colta tu richiamerai la macro motiplicherai per il valore
costante.
se questo fosse un problema potresti inserire nella macro
l'inserimento in una cella di controllo un testo tipo "valori già
moltiplicati"
questo testo ti apparirà a margine della tabella originaria solo se
avrai richiamato la macro
inoltre potresti inserire nelle formule della tabella di appoggio una
verifica di detta condizione del tipo:
=SE(indirizzo_cella_di_controllo="valori già
moltiplicati";indirizzo_cella_tabella;indirizzo_cella_tabella*tua_costante)
fai sapere
ciao
andrea
paoloard
2012-03-22 16:07:26 UTC
Permalink
"xxxkkk" ha scritto nel messaggio news:jkcsiu$hn3$***@speranza.aioe.org...

Supponiamo di avere una tabella con dei valori ad es.

1 2 3
4 5 4
1 2 3

se volessi moltiplicare ogni valore della cella per un determinato importo
ad es per 2, come dovrei procedere?
naturalmente non mi interessa creare una nuova tabella
ma lavorare sulla stessa. Avevo pensato ad una soluzione VBA con un ciclo,
oppure ad una macro con incolla speciale ma non ci sono altre soluzioni?


Io, più semplicemente, scriverei il 2 in una cella libera fuori dalla
tabella,
la copierei,
selezionerei la tabella,
quindi: Incolla Speciale/Moltiplica

-- fai sapere
ciao paoloard
http://www.riolab.org
xxxkkk
2012-03-22 17:31:41 UTC
Permalink
Post by paoloard
tabella,
la copierei,
selezionerei la tabella,
quindi: Incolla Speciale/Moltiplica
-- fai sapere
ciao paoloard
http://www.riolab.org
si' ma cosi' non sarebbe automatizzato il processo, salvo fare tutto con una
macro ma c'e' da vedere se funziona.
Andrea.9
2012-03-22 21:05:11 UTC
Permalink
Post by xxxkkk
si' ma cosi' non sarebbe automatizzato il processo, salvo fare tutto con una
macro ma c'e' da vedere se funziona.
per funzionare funziona
comunque ti devi rassegnare: non puoi avere una cella dove inserisci
un dato e contemporaneamente hai una formula che fa una qualsiasi
cosa.
anche se inserisci la formula più miracolosa del mondo, nel momento in
cui inserisci il dato la cancelleresti.
quindi: o VBA o tabella di appoggio come ti ho precedentemente
descritto.
se hai difficoltà prova a condividere il file.
ciao
andrea
xxxkkk
2012-03-23 11:10:44 UTC
Permalink
Post by xxxkkk
si' ma cosi' non sarebbe automatizzato il processo, salvo fare tutto con una
macro ma c'e' da vedere se funziona.
per funzionare funziona
comunque ti devi rassegnare: non puoi avere una cella dove inserisci
un dato e contemporaneamente hai una formula che fa una qualsiasi
cosa.
anche se inserisci la formula più miracolosa del mondo, nel momento in
cui inserisci il dato la cancelleresti.
quindi: o VBA o tabella di appoggio come ti ho precedentemente

---

si' infatti immaginavo, uso excel da anni e certe volte chiedo troppo...
volevo evitare il VBA perchè poi magari a qualcuno non gira...
eliano
2012-03-24 23:21:32 UTC
Permalink
Post by Andrea.9
Post by xxxkkk
si' ma cosi' non sarebbe automatizzato il processo, salvo fare tutto con una
macro ma c'e' da vedere se funziona.
per funzionare funziona
comunque ti devi rassegnare: non puoi avere una cella dove inserisci
un dato e contemporaneamente hai una formula che fa una qualsiasi
cosa.
anche se inserisci la formula più miracolosa del mondo, nel momento in
cui inserisci il dato la cancelleresti.
quindi: o VBA o tabella di appoggio come ti ho precedentemente
---
si' infatti immaginavo, uso excel da anni e certe volte chiedo troppo...
volevo evitare il VBA perchè poi magari a qualcuno non gira...
Fra le diverse versioni di Office e' piu' facile che funzioni il Vba
che non le formule, alcune inesistenti nelle versioni precedenti.
E per quelle esistenti, vedi un thread di poco tempo fa' su
DATA.DIFF() abbastanza explicativo.
Saluti
Eliano
eliano
2012-03-23 00:03:43 UTC
Permalink
Post by xxxkkk
Supponiamo di avere una tabella con dei valori ad es.
1  2 3
4  5 4
1  2 3
se volessi moltiplicare ogni valore della cella per un determinato importo
ad es per 2, come dovrei procedere?
naturalmente non mi interessa creare una nuova tabella
ma lavorare sulla stessa. Avevo pensato ad una soluzione VBA con un ciclo,
oppure ad una macro con incolla speciale ma non ci sono altre soluzioni?
Io, più semplicemente, scriverei il 2 in una cella libera fuori dalla
tabella,
la copierei,
selezionerei la tabella,
quindi: Incolla Speciale/Moltiplica
-- fai sapere
ciao paoloardhttp://www.riolab.org
Ciaooo Fratello.
Notizie false e tendenziose pervenute due giorni dopo la tua partenza
ti davano alle prese con uno tsunami maestoso e spumeggiante.
Meglio così!!

Vedo che hai passato solo vaghe indicazioni comunque risolutive,ma se
avessi usato il registratore di macro avresti opttenuto qualcosa di
simile:

Public Sub prova()

'in E1 il moltiplicatore, ad es.: 2
Range("E1").Copy

'in A1:C3 la tabella da trattare con
'il risultato finale sempre in A1:C3
Range("A1:C3").PasteSpecial Paste:=xlPasteAll, _
Operation:=xlMultiply, SkipBlanks:=False, _
Transpose:=False

Application.CutCopyMode = False

Range("A1").Select

End Sub

Comunque bentornato e saluti alla signora (quella senza fari e
contakilometri) :-))
Eliano
.
Andrea.9
2012-03-22 21:08:01 UTC
Permalink
[OT]
scusa xxxkkk .... non ti arrabbiare
ma il tuo nikname mi sa tanto di "porno razzista"
se non intendevi quello forse sarebbe meglio cambiarlo ;-)
ciao
andrea
xxxkkk
2012-03-23 11:08:17 UTC
Permalink
Post by Andrea.9
[OT]
scusa xxxkkk .... non ti arrabbiare
ma il tuo nikname mi sa tanto di "porno razzista"
se non intendevi quello forse sarebbe meglio cambiarlo ;-)
ciao
andrea
:-) eh eh hai presente quando devi mettere il primo nick che ti viene in
mente? Ecco non sapevo che mettere ed ho pigiato
a capofitto su alcuni tasti ...ecco il risultato, solo che adesso mi rompe a
cambiarlo...
un saluto all'ottimo NG che seguo sempre e che speriamo non chiuda mai,
visto che trovo insopportabili i nuovi forum di MS.
Bruno Campanini
2012-03-25 07:07:20 UTC
Permalink
Post by xxxkkk
Supponiamo di avere una tabella con dei valori ad es.
1 2 3
4 5 4
1 2 3
se volessi moltiplicare ogni valore della cella per un determinato importo ad
es per 2, come dovrei procedere?
naturalmente non mi interessa creare una nuova tabella
ma lavorare sulla stessa. Avevo pensato ad una soluzione VBA con un ciclo,
oppure ad una macro con incolla speciale ma non ci sono altre soluzioni?
Elementare Watson! elementare!

Public Sub CellsX2()
Dim i As Range
For Each i In [Sheet4!B1:D4]
i = 2 * i
Next
End Sub

Bruno

Loading...