Newsgroup: it.comp.lang.visual-basic
Titolo: Somma Automatica in Excel

Come posso inserire la "Somma automatica" in una cella di Excel usando
una macro?
Un grazie anticipato per le risposte
Maqroll il Gabbiere

Maqroll il
Gabbiere
Poniamo che in E1 vi sia il testo "Totale" e che
nell'intervallo E2:E10 vi siano costanti, formule non importa. Vorresti che
in E11 venga fuori la seguente formula =SOMMA(E2:E10) semplicemente
cliccando un pulsante?
Vorresti che la suindicata formula si adeguasse a
qualunque intervallo del foglio di lavoro?
Per cortesia fammi un esempio
e, se possibile, ti risponderò.
Saluti Il Picchio
--------------------------------
Inviato via 
http://usenet.iol.it
 

 qualunque intervallo del foglio di lavoro?
Non un "qualunque" intervallo, ma l'intervallo di celle "non vuote"
sovrastante la cella.
Cioè esattamente quello che fa la funzione "somma automatica" di excel.
Semplicemente vorrei che invece di cliccare l'icona di sommatoria lo
potesse fare una macro. (Non per pigrizia ma questa operazione deve 
essere fatta all'interno di una procedura più complessa...)
Se non mi sono spiegato dimmelo che ritento...
e grazie per la tua disponibilità.
Maqroll il gabbiere

Maqroll il gabbiere
Poniamo che in cella D1 tu abbia
una etichetta "Importo"
A partire da D2 vi è una serie non interrotta di
valori fino a D9
Il seguente codice immette nella cella D10 la funzione
=SOMMA(D2:D9)
Range("D1").End(xlDown).Offset(1).Select
With Selection
ScRiga = .Offset(-1).End(xlUp).Row - .Offset(-1).Row
ZonaR1C1 = "R[-
1]C:R[" & ScRiga & "]C"
.FormulaR1C1 = "=SUM(" & ZonaR1C1 & ")"
End With
Se non ti soddisfa provo a pensarne un'altra. Occorre però battezzare, al
di là di celle vuote o non, la cella nella quale conficcare la funzione. Vi
sono tanti modi ma occorre sapere come è impostato il tuo lavoro.
Se me lo
fai sapere... Per il momento ti saluto.
Il Picchio


 sono tanti modi ma occorre sapere come è impostato il tuo lavoro.
In realtà io non sono un programmatore e faccio fare alle mie macro
circa quello che farei io se dovessi fare a manina... 
Ma il peggio è che non ho ancora trovato il modo di disattivare l'eco a
schermo e ti lascio immaginare le risate... (Qualcuno pensa addirittura
che si possa rovinare il monitor...)
Quindi il mio lavoro è impostato in modo ingenuo e grezzo, ma così posso
seguire il codice e vedere che cosa succede passo a passo.
Nello specifico: io sono su una cella e devo prelevare la somma dei
valori delle celle (piene) sovrastanti, fermando il range - naturalmente
- alla prima cella vuota.
Immagina di essere sulla cella D200 e di avere sopra un numero
(imprecisato e variabile) di celle contenenti dei valori (cioe da
D199:Dnnn, dove D(nnn-1) è la prima cella vuota). 
Io voglio conficcare in D200  la formula =Sum(D199:Dn
La tua formula modificata mi è venuta così e pare funzionare...
posizione = ActiveCell.Address
Range(posizione).Offset(1).End(xlUp).Offset(0).Select
With Selection
ScRiga = .Offset(0).End(xlUp).Row - .Offset(1).Row
ZonaR1C1 = "R[-1]C:R[" & ScRiga & "]C"
End With
Range(posizione).Select
ActiveCell.FormulaR1C1 = "=SUM(" & ZonaR1C1 & ")" 
Ma se ti viene in mente un modo migliore....
Comunque grazie, senza le tue indicaioni non ne sarei mai uscito.
Maqroll il Gabbiere

- alla prima cella vuota.
Poniamo che
la cella attiva sia D200 e sopra ad essa vi siano un intervallo di celle
non vuote fino a D180. Ti posizioni in D200 e applica il seguente codice
With Selection
ScRiga = (.Offset(-1).End(xlUp).Row - .Offset(-1).Row) - 1
ZonaR1C1 = "R[-1]C:R[" & ScRiga & "]C"
End With
ActiveCell.FormulaR1C1 =
"=SUM(" & ZonaR1C1 & ")"
In D200 vi sarà =SOMMA(D180:D200)
Per quanti
riguarda lo schermo applica il seguente codice
Application.ScreenUpdating
= False
Risaluti


 Inviato via 
http://usenet.iol.it
-- 
---------------------------------------------------
     Bartolomeo Aimar  architetto - 
     via Sant'Anselmo 27 - 10125 Torino (Italy)
     tel.
+39 011 6699308
  - fax: 
+39 02 700536287
 
     e-mail: 
b.a...@awn.it
---------------------------------------------------
--------------------------------------------------
 P.S.  Per diverse ragioni questo messaggio
 potrebbe non prevedere una risposta ma
 se mi RE-inviate (anche il solo titolo) avrò
 la certezza che non è andato perso.
-------------------------------------------------

-------------------------------------------------
A mio avviso
non si può pretendere di imparare il VBA di Excel sbirciando di quando in
quando nella Guida. Occorrono delle basi che si possono imparare solamente
o da un amico fidato che presti il suo servizio gratis et amore oppure
andando in libreria. Se hai passione e tempo ti consiglio il seguente
libro:
EXCEL 2000 VBA di Gianni Giaccaglini edito da Jackson Libri
Ti
risaluto cordialmente.


 EXCEL 2000 VBA di Gianni Giaccaglini edito da Jackson Libri
Grazie! Deciderò sfogliandolo in libreria...
Comprare un manuale sottende l'impegno a studiarlo, e il VB mi dà
l'impressione di essere merce troppo deperibile per dedicargli troppo
tempo.
Grazie ancora
Maqroll