Il blog di Gianni Giaccaglini

Blog su VBA e VSTO
Gianni Giaccaglini

My Links

News

NB - V. anche gli ARTICOLI (in fondo a questa barra)
Solo quesiti validi a: giannigiac@tin.it
Il mio Best seller su VBA
(v. www.hoepli.it)


Il mio ultimo libro su Open XML
(v. www.FAG.it):



La mia nipotina ELISA

Foto con dedica a ME di
Bill Gates giovanissimo
nei mitici anni 80!

Categorie Post

Categorie Articoli

Archivio

Immagini

Blog Stats

Funzione personale per totali alterni

Questa è una ricetta molto semplice. Per principianti? Sì ma, magari, pure per quanti non ci pensano... Ecco di che si tratta.

Supponiamo che in un foglio dedicato alle solite vendite si abbiano, per fissare le idee, un elenco di articoli in colonna A. Nelle successive colonne - B, C, D e così via - si alternino le quantità vendute e il relativo fatturato. Noi vogliamo gli opportuni totali di riga a destra di tali dati. Come ci ha insegnato la maestra, non si possono sommare le pere con le mele. Pertanto la gettonatissima funzione SOMMA() non va, né ci appagano formule del tipo =B2+D2+E2+... Tediose da digitare e per nulla flessibili. Qui ci vuole una funzione personale, esclamano tutti in coro! Ecco quella per sommare le sole vendite:

Function SommaAlternaDisp(Zona As Range)
  Dim i As Integer
  With Zona
    For i = 1 To .Count Step 2
      S = S + .Cells(i)
    Next
  End With
  SommaAlterna = S
End Function

Commenti? Superflui, ci sembra. E altrettanto inutili per quest'altra funzioncina personale, che nel nostro esempietto servirebbe a sommare i fatturati.

Function SommaAlternaPari(Zona As Range)
  Dim i As Integer
  With Zona
    For i = 2 To .Count Step 2
      S = S + .Cells(i)
    Next
  End With
  SommaAlterna = S
End Function

posted on mercoledì 2 novembre 2005 11.54